以下是我的jQuery代码:
<script type = "text/javascript" >
function add_title() {
var title_no = $('#doc_title div').size();
alert(title_no);
}
</script>
以下是我关注的HTML代码:
<ul>
<li>
<div id="doc_title" class="answer-block">
<a id="add_more_title" class="c-gray-btn c-add-btn" onclick="add_title(); return false;" name="add_more_title" href="#">
<ol>
<div id="ttl1">
<li class="ans_li">
<li class="ans_li">
<li class="ans_li">
<li class="ans_li">
<input type="hidden" value="22" name="pt_doc_id[0]">
<input type="hidden" value="sahil_kumar.pdf" name="pt_doc_old_file_iname[0]">
</div>
<div id="ttl2">
<li class="ans_li">
<li class="ans_li">
<li class="ans_li">
<li class="ans_li">
<input type="hidden" value="23" name="pt_doc_id[1]">
<input type="hidden" value="vijay_singh.doc" name="pt_doc_old_file_iname[1]">
</div>
</ol>
<a id="add_more_title" class="c-gray-btn c-add-btn" onclick="add_title(); return false;" name="add_more_title" href="#">
<p class="fade">Note * (Image size should be less then 1 mb and allowed image types are jpg, jpeg, gif, png .)</p>
</div>
</li>
<li>
</ul>
警报即为4,实际警报应为2.为什么会发生这种情况?有人可以帮我这方面吗?简而言之,它给出了两倍的不。 div中存在的div id= doc_title
。也就是说,如果存在1 div,那么警报将变为2,如果没有。是警告8。
答案 0 :(得分:2)
从问题看来,你的代码中有两次dom结构。的 Demo 强>
要特别选择这个dom,你需要确定这个dom在dom结构方面与现有的dom有什么不同(即两个dom在他们的子结构和父结构方面有什么不同)。可以找出父母与id / class并尝试获取dom。的 Demo 强>
var title_no = $('#doc_title div').length;
var title_no1 = $('ul li #doc_title div').length;
答案 1 :(得分:1)
Please try this:
$("#add_more_title").click( function() {
var title_no = $('#doc_title div').size(); alert(title_no);
});