已创建jQuery动态元素,但无法获取动态元素的句柄
在下面的代码中,我将遍历每个XML并创建动态内容已创建jQuery动态元素,但无法获取动态元素的句柄,jquery,Jquery,在下面的代码中,我将遍历每个XML并创建动态内容 $('#instDiv').append( "<div><b>" + $(this).attr('institute') + "</b></div>" + "<div>Type: " + $(this).find('type').text() + "</div>" + "<div>Name:</div>" + "<div onClick=
$('#instDiv').append( "<div><b>" +
$(this).attr('institute') + "</b></div>" +
"<div>Type: " + $(this).find('type').text() +
"</div>" + "<div>Name:</div>" +
"<div onClick=\"showDiv('inst"+idCounter+"');\"><b>" + $(this).find('RM').text() +
"</b></div>" + "<span id=\"inst"+idCounter+"\" >" +
"<table><tr><td rowspan=3><img height=50 width=40 src='imgurl'></img></td><td>Phone#: " + $(this).find('ph').text() + "</td></tr>" +
"<tr><td>Email: " + $(this).find('mail').text() +
"</td></tr>" + "<tr><td>Location: " + $(this).find('loc').text() +
"</td></tr></table></span>" );
在上面的代码中,我能够获得instDiv
的divID
值&innerHTML
,也可以打印具有相同id的span
但是,当我尝试打印divID
length时,它返回0。也就是说,没有具有该id的元素。在我们的示例中,id是inst0
。但是,这存在于instDiv
innerHTML中
我如何才能访问该元素。我需要在单击名称时切换显示。如果您通过ID属性进行选择,jQuery选择器应该是
#inst0
,而不仅仅是inst0
,因此请预先添加一个哈希/磅符号,如下所示:
function showDiv(divID) {
alert($('#' + divID).length);
$('#' + divID).toggle();
}
function showDiv(divID) {
alert($('#' + divID).length);
$('#' + divID).toggle();
}