2011-11-07 13 views
15

मेरे नियंत्रण से परिस्थितियों के कारण, SharePoint, मेरे पास कोड का निम्न भाग है।मिलान jquery .text() से  

var item = $('<span><font size=1>&nbsp;</font></span>').text() 

मैं &nbsp; को .text() मूल्य की तुलना करने की कोशिश कर रहा हूँ और क्या करना है पता नहीं है। कोड item के माध्यम से कदम उठाने के बराबर लगता है जो "" समझ में आता है। लेकिन item == " " कर झूठी वापसी करता है। यह तुलना कैसे की जानी चाहिए?

संपादित करें: उदाहरण बेला

http://jsfiddle.net/hUBeP/2/

+0

क्या यह वास्तव में [चरित्र 0xA0] (http://www.fileformat.info/info/unicode/char/a0/index.htm) है? लेकिन मुझे लगता है कि ब्राउज़र-निर्भर हो सकता है - मैं उस पर भरोसा नहीं करना चाहता। क्या यह एक व्हाइटस्पेस regexp से मेल खाता है? – Rup

+0

इसे देखें: http://stackoverflow.com/questions/5237989/nonbreaking- स्पेस – Samich

उत्तर

42

'\xa0' के लिए जाँच (जो &nbsp; द्वारा बनाई गई चरित्र है) का प्रयास करें:

var item = $("<span><font size=1>&nbsp;</font></span>").text(); 
alert("'" + item + "' " + (item == '\xa0')); 

http://jsfiddle.net/hUBeP/3/

+0

ऐसा हुआ! @Rup - यह केवल आईई में चल रहा है इसलिए ब्राउज़र निर्भरता वास्तव में एक मुद्दा नहीं है। चीयर्स। – anothershrubery

+0

असल में यह फ़ायरफ़ॉक्स में भी काम करता है - और शायद अन्य ब्राउज़रों में भी। – ThiefMaster

+0

हाँ मैंने गलती से अंतिम टिप्पणी अधूरा जोड़ा। अब अपडेट किया गया! – anothershrubery

0

&nbsp; के लिए यह तुलना करें, कि के रूप में वह सामग्री है जिसे आप मिलान करना चाहते हैं। ऐसा प्रतीत नहीं होता है क्योंकि ब्राउज़र प्रस्तुतकर्ता पात्रों की बजाय अंतरिक्ष के रूप में है। इसे &nbsp; से तुलना करने के परिणामस्वरूप &nbsp; की तुलना में दो सेट या दो समान रिक्त स्थान की तुलना की जा रही है।

+0

अच्छी तरह से तकनीकी रूप से मैं इसकी तुलना '$ ("

 

") के साथ तुलना कर सकता हूं .text()'। लेकिन चोरमास्टर का समाधान बहुत साफ है। – anothershrubery

+0

सहमत हैं, खासकर जब से आप क्रॉस-ब्राउज़र मुद्दों के बारे में चिंतित नहीं हैं। – yoozer8

संबंधित मुद्दे