当 ID 相同时,我尝试获取列表的单独值,因为我使用 foreach 循环来生成列表。
目前我只能获取页面加载的第一个项目的值。
无论我点击哪个项目,我总是会获得最高的值。
这是我的代码:
<div class="listview lv-user m-t-20">
<div class="lv-item media">
<div class="lv-title">test 1</div>
<input type="hidden" name="screen_name_test" id="screen_name_test" value="this is test 1">
</div>
</div>
<div class="lv-item media">
<div class="lv-title">test 2</div>
<input type="hidden" name="screen_name_test" id="screen_name_test" value="this is test 2">
</div>
</div>
<div class="lv-item media">
<div class="lv-title">test 3</div>
<input type="hidden" name="screen_name_test" id="screen_name_test" value="this is test 3">
</div>
</div>
<小时/>
$( ".lv-item" ).each(function(index) {
$(this).on("click", function(){
alert($('#screen_name_test').attr('value'));
});
});
我还创建了一个jsFiddle .
最佳答案
根据其他人的地址,这里的问题是重复的ID。也许你可以简单地改变这一行,
$('#screen_name_test').attr('value')
对此:
$(this).find('#screen_name_test').val()
更准确地说:
$(".lv-item").on("click", function(){
alert($(this).find('#screen_name_test').val());
});
关于javascript - 当ID相同时,从列表中获取单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33315657/