Javascript 如何影响jquery中具有相似(唯一)id的另一个div
如图所示,我想使用一个div的唯一id更改另一个div的值,但我不知道如何实现这一点,它只适用于第一个div,而不适用于第二个div 代码: htmlJavascript 如何影响jquery中具有相似(唯一)id的另一个div,javascript,jquery,html,uniqueidentifier,Javascript,Jquery,Html,Uniqueidentifier,如图所示,我想使用一个div的唯一id更改另一个div的值,但我不知道如何实现这一点,它只适用于第一个div,而不适用于第二个div 代码: html 注意:我不想使用任何形式的单击事件,因为您使用的是类,以div为目标,因此选择器返回多个元素,您需要循环: var id = $(".a").map(function(){return $(this).attr("data-u");}).get(); $("#id"+id[0]).text("23456"); $("#id"+id
注意:我不想使用任何形式的单击事件,因为您使用的是类,以div为目标,因此选择器返回多个元素,您需要循环:
var id = $(".a").map(function(){return $(this).attr("data-u");}).get();
$("#id"+id[0]).text("23456");
$("#id"+id[1]).text("23456");
$(".a").each(function(){
var id = $(this).data('u');
$("#id"+id).text("23456")
});
您需要使用,因为.data()
是获取元素的数据属性
$(".a").each(function(){
var id = $(this).data('u');
$("#id"+id).text("23456") // Will set same text for both divs
});
根据你的评论
如果您更喜欢.attr()
,请尝试此选项
var id = $(this).attr('data-u'); // .attr instead of .data()
注意:如果您在标记中的任何位置使用数据属性
,建议使用.data()
而不是.attr()
来获取该属性
如果你想使用相同的文本进行每个.test,我更喜欢使用.attr()
确定一点旁注当函数在每个循环中时,我如何调用它,因为我在google chromeUncaught ReferenceError中遇到了一个错误:ago没有定义错误可能在其他地方,从你的代码中似乎没有,您可能正在使用一个变量ago
,但没有声明它!让我们
$(".a").each(function(){
var id = $(this).data('u');
$("#id"+id).text("23456") // Will set same text for both divs
});
var id = $(this).attr('data-u'); // .attr instead of .data()