我遇到了问题
我基本上试图创建一个函数,我将不同的文本(从数组)分配给同一类的不同div,这些div由id区分,这里是我的意思的一个例子HTML标记
<div class='actContainer'>
<div class='msgContainer'>
<input class='activityId' type='hidden' value='1'>
<div class='date'> </div>
</div>
<div class='msgContainer'>
<input class='activityId' type='hidden' value='2'>
<div class='date'> </div>
</div>
<div class='msgContainer'>
<input class='activityId' type='hidden' value='3'>
<div class='date'> </div>
</div>
</div>
JQuery代码
var textArr = ['time1', 'time2', 'time3'];
var id = [1, 2, 3];
$.each(textArr, function(key, value){
$('.actContainer').find('input#activityId').val()==id[key]
.parent().find('div.date')
.append("Posted message at"+textArr[key]);
}
从代码中可以看到我试图在div.date标记之间放置文本。
这目前无效,所以我必须做错事,如果有人可以提供帮助,那将非常感激
答案 0 :(得分:3)
你需要这个:
$('.actContainer').find('input.activityId[value="'+id[key]+'"]')
.siblings('.date')
.text("Posted message at"+textArr[key]);
这意味着您正在使用activityId类搜索输入,该类的值也等于id [key]。 你想在它附近找到一个有课程日期的div,你想将它的文本内容改为“发布的消息......”
答案 1 :(得分:1)
“activityId”似乎是一个类,而不是一个ID。 另外我建议直接在日期div上放置一个ID,或者将ID放在父元素上(带有类msgContainer的ID)。这将使日期div更容易解决。
答案 2 :(得分:1)
非常简单的代码:
$.each(textArr, function(key, value) {
key = key +1
$('input[value="'+key+'"]').siblings('.date').text("Posted message at "+value);
});
我编辑了你的小提琴 - http://jsfiddle.net/9FAhJ/1/