为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取使用cshtml中的循环创建的每个div / li / a的特定元素的ID

如何获取使用cshtml中的循环创建的每个div / li / a的特定元素的ID

江户川乱折腾 2021-05-06 16:13:58
我正在从控制器传递模型,并使用for循环在div中填充模型元素。对于每个模型项目,都有一个具有不同属性的div。现在,我希望每当单击任何链接或元素中的任何一个时,都divs必须获取分配给它的特定值。我遇到的问题是,它仅拾取在循环的第一次迭代中创建的一个div的值,而与我现在使用的div无关。下面是与我现在正在打印的完全一样的简单列表,当我单击下面创建的任何链接时,我都希望该链接的值。假设有15个类别,我想要第6个类别是“ java”,我如何使用jquery来获得该类别。@foreach (var category in ViewBag.Categories){     <li class="item"><a id="categoryItem" value = @category.categoryName>@category.categoryName</a></li>}
查看完整描述

3 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

id="categoryItem"

问题出在这个ID分配上。如果这是您的实际代码,则只需为循环中的所有元素设置相同的ID“ categoryItem”。除了违反HTML标准外,如果您使用此ID寻址元素,这还会导致大多数浏览器选择第一个元素。


要解决此问题,您可以将类别名称包含在id中,如下所示:


@foreach (var category in ViewBag.Categories)

{

     <li class="item"><a id="categoryItem_@category.categoryName" value ="@category.categoryName">@category.categoryName</a></li>

}

但是,这仅在您的类别名称不包含空格的情况下才能正常工作,因此使用某种整数id可能会更好。


还要注意""围绕value价值的双引号。


查看完整回答
反对 回复 2021-05-20
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

根据您的代码来建立列表:


@foreach (var category in ViewBag.Categories)

{

    <li class="item"><a value="@category.categoryName">@category.categoryName</a></li>

}

假设有15个类别,我想要第6个类别是“ java”,我可以使用jquery来获得。


这可以解释为:


第六类,恰好是“ java”(即值不相关)

给予:


$("li.item>a:eq(5)").addClass("thisone");

或为:


“ java”类别,恰好是第六类别(即职位无关)

给予:


$("li.item>a[value=java]").addClass("thisone");

(它将选择所有“ java”)


或为:


第6个“ java”类别(即至少有6个为“ java”,而您希望第6个)

给予:


$("li.item>a[value=java]:eq(5)").addClass("thisone");

更改.addClass("thisone")为您要对该项目执行的操作


您似乎在问3个不同的问题-如何获取ID,如何获取nth元素以及:


当我单击任何div中的任何链接或元素时,我必须获得分配给它的特定值


$("li.item>a").click(function() {

    console.log($(this).prop("value"))

});

正如其他人指出的那样,问题是您可能使用:


$("#categoryItem")...  

由于在HTML文档中ID必须是唯一的,因此,这始终会为您提供第一个信息。(您会注意到我id=从上面的代码段中删除了该问题)


查看完整回答
反对 回复 2021-05-20
?
慕码人8056858

TA贡献1803条经验 获得超6个赞

你有categoryId你的category模式吗?如果您这样做,则更id="categoryItem"改为id="@category.categoryId"


查看完整回答
反对 回复 2021-05-20
  • 3 回答
  • 0 关注
  • 418 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信