2010-03-30 14 views
6

JQuery का उपयोग करना, क्या चेकबॉक्स के तुरंत बाद टेक्स्ट का चयन करने का एक आसान तरीका है?JQuery इनपुट चेकबॉक्स के बगल में टेक्स्ट का चयन करें?

<li>bleh..</li> 
<li> 
    <input type="checkbox" id="cbx1" value="10" />&nbsp;Very important text. 
</li> 
<li>bleh..</li> 

मैं "बहुत महत्वपूर्ण पाठ" चुनने के लिए jquery का उपयोग करना चाहता हूं। शून्य से &nbsp;

उत्तर

13

बेहतर समाधान एक में पाठ रैप करने के लिए हो सकता है label तत्व:

<li> 
    <input type="checkbox" id="cbx1" value="10" /> 
    <label for="cbx1">Very important text.</label> 
</li> 

तब आप प्राप्त कर सकते हैं इस तरह का पाठ:

var text = $('label[for="cbx1"]').text(); 

यह आपके दस्तावेज़ के अर्थशास्त्र में भी सुधार करता है।

+0

के बीच मतभेदों को साफ़ कर रहा हूं धन्यवाद .. मुझे लगता है कि जब मैं टेक्स्ट पर क्लिक करता हूं, तो जिस तरह से हम विंडोज़ में आदी हैं, चेकबॉक्स को टॉगल किया जाता है। –

8

जो आपने कहा है ऐसा करने के लिए:

var text = $('#cbx1').parent().text(); 

आप हालांकि यह ट्रिम करने के लिए, के बारे में निश्चित नहीं की आवश्यकता हो सकती &nbsp;:

var text = $.trim($('#cbx1').parent().text()); 
+1

+1, ट्रिम संस्करण इसके लिए सबसे अच्छा पूर्ण उत्तर है। –

+0

आह तो .text() वास्तव में पाठ प्राप्त करेगा और HTML तत्वों (चेकबॉक्स) को अनदेखा करेगा? अब मैं .text() और .html() –

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