我想使用jquery选择div的子节点。我尝试与孩子()但没有工作
<div class="main" id="this_456" onclick="change(456)">
<div id="title">some text</div>
<div id="body">some text as well</div>
</div>
的javascript
function change(id)
{
$('#this_'+id).children("#body").fadeOut();
}
答案 0 :(得分:1)
如果您指定456
作为参数而非this_456
(请参阅:http://jsfiddle.net/aLxTz/),则您的代码有效。
但是,由于<div id="body"/>
由ID(#body
)标识,因此在内部和其他元素中查找它是多余的 - 它应该是文档范围内唯一的。如果您希望拥有一个正文class=""
的多个实例,请使用<div/>
属性,例如<div class="body">...</div>
。
此外,请注意onclick
处理程序将this
变量设置为context元素。由于这是问题本身,你可以写
<div class="main" id="this_456"> ... </div>
$(".main").click(function() {
$(this).chlidren(".body").fadeOut();
});
答案 1 :(得分:0)
试试这段代码:
function change(id) {
$('#this_'+id+ ' > div').find("#body").fadeOut();
}
答案 2 :(得分:0)
<div class="main" id="this_456" onclick="change(this)">
<div id="title">some text</div>
<div id="body">some text as well</div>
</div>
function change(elm) {
$(elm).children("#body").fadeOut();
}