更改其中一个输入字段中的条目。单击计算机上的enter键。期望的结果是在p标签内只有相应的span标签(class =" note")来显示输入结果;并非所有span标记都在此示例中演示。如何将$(" .note")定义为"此类"。我已经尝试了一切。
$(document).ready(function(){
$("p > .test").change(function(){
$(".note").html($(this).val());
});
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<p><input type="text" class="test" value="Mickey Mouse"><span class="note"></span></p>
<p><input type="text" class="test" value="Mickey Mouse"><span class="note"></span></p>
<p><input type="text" class="test" value="Mickey Mouse"><span class="note"></span></p>
&#13;
答案 0 :(得分:1)
您需要jQuery .next()
功能:
$(document).ready(function(){
$("p > .test").change(function(){
$(this).next(".note").html($(this).val());
});
});
答案 1 :(得分:0)
您可以使用jQuery的许多traversal methods来定位正确的节点。一个可能的解决方案是获得this
的下一个元素兄弟:
$(this).next().html(...);
另一个是获得.note
父母的this
孩子:
$(this).parent().children('.note').html(...);
答案 2 :(得分:0)
$('.note')
将收集该页面中该类的所有元素。
在jQuery事件处理程序中,this
是发生事件的匹配选择器中的元素。然后,您可以使用元素中的遍历,一个简单的遍历为siblings()
$("p > .test").change(function(){
$(this).siblings(".note").html($(this).val());
});
一些替代遍历
$(this).next()
$(this).parent().find('.note')
$(this).closest('p').find('.note')
的 DEMO 强>