2011-09-23 20 views
12

संभव डुप्लिकेट:जारी?

एचटीएमएल:

<span id="one">one</span> 
<span id="two">two</span> 
<span id="three">three</span> 

JavaScrip
Finding whether the element exists in whole html page

मैं somethings बनाने चाहते हैं टी:

if (isset($("#one"))){ 
    alert('yes'); 
} 

if (isset($("#two"))){ 
    alert('yes'); 
} 

if (isset($("#three"))){ 
    alert('yes'); 
} 

if (!isset($("#four"))){ 
    alert('no'); 
} 

LIVE:

http://jsfiddle.net/8KYxe/

कैसे मुझे लगता है कि कर सकते हैं?

+0

क्या करना चाहिए इन काल में सेट हो? –

+2

'जारी करने' का अर्थ क्या है? 'Span' में कुछ सामग्री है? वह मौजूद है? –

उत्तर

22
if (($("#one").length > 0)){ 
    alert('yes'); 
} 

if (($("#two").length > 0)){ 
    alert('yes'); 
} 

if (($("#three").length > 0)){ 
    alert('yes'); 
} 

if (($("#four")).length == 0){ 
    alert('no'); 
} 

यह तुम क्या जरूरत है :)

+3

यदि आईडी नहीं मिली है तो यह त्रुटि – Minimihi

+1

'अगर (!! $ ('# एक')) {चेतावनी ('हां') फेंक देगा; } '- और इतने पर.यह है !! जेएस में डबल ऑपरेटर नहीं। –

8
function isset(element) { 
    return element.length > 0; 
} 

http://jsfiddle.net/8KYxe/1/


या, एक jQuery विस्तार के रूप में:

$.fn.exists = function() { return this.length > 0; }; 

// later ... 
if ($("#id").exists()) { 
    // do something 
} 
+0

@Tomalak - संपादन के लिए धन्यवाद :) –

+0

आपका स्वागत है। ;) – Tomalak

-2

आप बस इस का उपयोग कर सकते हैं:

if ($("#one")){ 
    alert('yes'); 
} 

if ($("#two")){ 
    alert('yes'); 
} 

if ($("#three")){ 
    alert('yes'); 
} 

if ($("#four")){ 
    alert('no'); 
} 

क्षमा करें, मेरी गलती, यह नहीं है काम।

+3

'$()' हमेशा एक jQuery ऑब्जेक्ट देता है, जो 'सत्य' का मूल्यांकन करता है। –

+0

काम नहीं करेगा, jQuery हमेशा jQuery ऑब्जेक्ट देता है। – Usman

+1

@ फ़ेलिक्सक्लिंग: आप इस टिप्पणी की बेहतर प्रतिलिपि बना सकते हैं ... शायद इस तरह का जवाब देने वाला तीसरा व्यक्ति होगा ...;) –

17

आप length उपयोग कर सकते हैं:

if($("#one").length) { // 0 == false; >0 == true 
    alert('yes'); 
} 
+3

0 के रूप में 0 को 0 की आवश्यकता नहीं है, वैसे भी झूठी के रूप में मूल्यांकन किया जाता है। –

+0

यह इंगित करता है कि इस तरह के आईडी के साथ elemnt मौजूद है या नहीं। हालांकि अगर आप यह जानना चाहते हैं कि इस तत्व के लिए मान मौजूद है, तो आप 'if ($ (" # one ") कर सकते हैं। वैल()) {...}' –

+2

@ रिचर्ड: दाएं, लेकिन '> 0' है अधिक अभिव्यक्तिपूर्ण और इसलिए पढ़ने के लिए आसान है। यह उन सभी को तत्काल स्पष्ट नहीं हो सकता है जो '0' 'झूठी' का मूल्यांकन करते हैं। –

-2
function el(id) { 
    return document.getElementById(id); 
} 

if (el('one') || el('two') || el('three')) { 
    alert('yes'); 

} else if (el('four')) { 
    alert('no'); 
} 
संबंधित मुद्दे