我有一个大的AJAX响应,它插入了大量的HTML。在此之后,我无法使用任何新创建的ID或类,就好像它们在表单加载时存在一样。AJAX调用后无法使用DOM元素
我已经看过.live(),它解决了我的问题之一,而不是其他问题。
我基本上想通过点击链接时通过AJAX .html()插入的ID或类来显示DIV。
例子:
CODE:
html_out = "<div class='span-1'><a href='#' onClick='show_sub_row(\"#sub_row" + id + "\"); return false;'>[ + ]</a></div>";
html_out += '<div class="hidden_sub_row prepend-2" style="display: none;" id="#sub_row' + id + '">';
html_out += 'Content';
html_out += '</div>';
$('#search_results').html(html_out);
然后在创建HTML后,我尝试:
function show_sub_row(sub_row) {
$(sub_row).show('fast');
}
我知道它是引用正确的ID,因为我可以做一个警报( sub_row),并显示与使用FireBug显示的ID相匹配的正确ID来检查隐藏的DIV。
是的,我上面的行中#是问题..直到现在我才注意到它。删除#所有东西都在工作..其中有一天,我没有看到它几个小时。谢谢! – bobcat 2011-02-24 06:31:06
完全没问题......接受? :) – philwinkle 2011-02-24 06:32:05