在Javascript中标识html数据属性
我有一个在Razor中的foreach中迭代的项目列表,对于每个项目,我都有一个锚,它打开一个带有项目id的引导模式,但是对于每个打开的项目,第一个项目id的数据属性总是显示出来,我需要的是Javascript中的Identified data id属性来显示每个项目的项目id,这是我的html:在Javascript中标识html数据属性,javascript,jquery,html,twitter-bootstrap,Javascript,Jquery,Html,Twitter Bootstrap,我有一个在Razor中的foreach中迭代的项目列表,对于每个项目,我都有一个锚,它打开一个带有项目id的引导模式,但是对于每个打开的项目,第一个项目id的数据属性总是显示出来,我需要的是Javascript中的Identified data id属性来显示每个项目的项目id,这是我的html: <a href="#viewItem" id="item" data-toggle="modalViewItem" data-item-id="@Item.ItemId"> Ver<
<a href="#viewItem" id="item" data-toggle="modalViewItem" data-item-id="@Item.ItemId"> Ver</a>
和Javascript
'<h4 class="modal-title" id="myModalLabel">' + $("#item").data("item-id") '</h4>'
'+$(“#项”).数据(“项id”)'
任何人都可以帮助我吗?#item
将始终返回文档中找到的第一个实例
大概您已经创建了一个单击事件,然后插入
html。如果是这种情况,则可以在创建该元素的实例时使用this
:
'+$(this).data(“item id”)++'
您是否在foreach循环中复制了id=“item”
?不,html中的每个项都有不同的项id,但是当我在Javascript中获得它时,无论单击哪个锚定,总是将第一个的值发送给我。您能否在链接周围提供html?现在,正如@Jasen所说,id
属性始终等于item
所以您只更改数据项id
@Jasen抱歉,我没有正确理解您的问题,但是是的,它等于item(id=“item”)的每个项的id,唯一更改的值是数据项id,我将$(“#item”).data(“item id”)更改为$(this)。data(“项目id”)正如Samuel Cook建议的那样,它很有效,谢谢大家的回答重复id
值无效。非常感谢,我还需要学习很多Javascript,这个答案解决了我的问题,谢谢。