Re: [問題] jquery的has使用方式
※ 引述《knives ()》之銘言:
: 因為我要用jquery產生innerHTML
: 用$('#contain').append('<div id="tab'+id+'>某id的innerHTML</div>');
: 其中希望每一個id只能產生一組,所以必須判斷
: contain是否已經有同一個id產生了
: 我看jquery有一個has
: 我看官網範例,有一段是這樣用的
: $("ul").append("<li>" + ($("ul").has("li").length ? "Yes" : "No") +
: "</li>");
: 所以我想說has傳回來是不是就是布林值
: 我就把我的判斷寫成這樣
: if ( $('#contain').has('div#tab'+id) )
: { //檢查是否該id已產生過了
: alert("已經產生過一次了");
: return false;
: }
: else
: {
: $('#contain').append('<div id="tab'+id+'>某id的innerHTML</div>');
: }
: 但是我第一次執行的時候,卻是已經跑到警告視窗的判斷裡面
: 這並不是我要的結果
: 請問一下,我該怎麼寫才能判斷
: 謝謝
這東西是新東西(since 1.4) , 難怪我剛剛一時想不起來有這個東西,
剛翻了一下 doc, 這東西應該是filter ,
所以她回傳的是[符合這個條件的元素] , 而不是你所謂的 boolean.
$("ul").has("li") 是說 , 找出所有ul 裡面有包li這各子元素的,
回傳的是一個 ul 的集合 .
你可以透過取得回傳的集合的數量(如果是0就是沒找到)來判斷.
ex. $("ul").has("li").size() == 0 或 $("ul").has("li").length==0
這其實在他的doc 範例可以找的到.
--
I am a person, and I am always thinking .
Thinking in love , Thinking in life ,
Thinking in why , Thinking in worth.
I can't believe any of what ,
I am just thinking then thinking ,
but worst of all , most of mine is thinking not actioning...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.137.173.93
→
02/23 17:49, , 1F
02/23 17:49, 1F
推
02/23 17:53, , 2F
02/23 17:53, 2F
→
02/23 19:22, , 3F
02/23 19:22, 3F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章