尋找解決方案如何檢測li是否有孩子ul或ol我發現jquerys has()這是非常棒的,除了我需要檢測是否只有實際點擊li有一個孩子,而不是任何一個兄弟姐妹。有沒有辦法做到這一點?文檔不包括這一點。JQuery檢查是否點擊li有孩子ol/ul
HTML
<ol>
<li><a class="delete-li" href="">Page 1</a></li>
<li><a class="delete-li" href="">Page 2</a></li>
<li><a class="delete-li" href="">Page 3 has ol</a>
<ol>
<li><a class="delete-li" href="">Page 4</a></li>
<li><a class="delete-li" href="">Page 5</a></li>
<li><a class="delete-li" href="">Page 6</a></li>
</ol>
</li>
</ol>
JS
$('.delete-li').live('click', function(event){
event.preventDefault();
item_id = $(this).attr('rel');
clicked = $(this);
////////////////////
//check if has sub pages
if(clicked.has('ol')){
answer = confirm('This will delete all sub pages and content are you sure?');
console.log(answer);
if(answer===true){gogogo=true;
}else{gogogo=false;}
}else{ gogogo=true;}
//if yes run AJAX delete
if(gogogo===true){
alert('LI REMOVED');
}
////////////////
});
結帳的jsfiddle的代碼。
感謝您的答案,但它不工作http://jsfiddle.net/ZqzVN/1/也可能你提供的任何瞭解爲什麼。長度是那裏? –
@TommyArnold我已經更新了答案,'length'返回jQuery集合中選定元素的數量,如果所選元素的長度大於0,那麼'if'語句賦值爲true。 – undefined
感謝您的解釋 –