2012-06-07 10 views
21

मैं specfic मूल्य के साथ चेकबॉक्स का चयन करें और यह जाँच करना चाहते हैं के साथ चेकबॉक्स जाओ ..विशिष्ट मूल्य

मैं इस

$(":checkbox").filter({"value":5}).attr("checked","true");​ 

और यहाँ की तरह बनाने के एचटीएमएल

​<input type="checkbox" name="priv"​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ value="1"​​​​​​​​​​​​​​​​​/> 
<input type="checkbox" name="priv" value="2"/> 
<input type="checkbox" name="priv" value="3"/> 
<input type="checkbox" name="priv" value="4"/> 
<input type="checkbox" name="priv" value="5"/> 
<input type="checkbox" name="priv" value="6"/> 
<input type="checkbox" name="priv" value="7"/> 
<input type="checkbox" name="priv" value="8"/>​ 

यहाँ है है समस्या

उत्तर

67

आप चेकबॉक्स प्राप्त करने के लिए Attribute Equals Selector [name="value"] का उपयोग कर सकते हैं वें विशेष मूल्य। attr() के बजाय prop() का भी उपयोग करें क्योंकि jQuery doc द्वारा इसकी अनुशंसा की जाती है।

Live Demo

$(":checkbox[value=4]").prop("checked","true"); 

या

$("input[type=checkbox][value=5]").prop("checked",true); 

विवरण: तत्वों वास्तव में एक निश्चित मूल्य, jQuery doc के बराबर एक मूल्य के साथ निर्दिष्ट विशेषता है कि चयन करता है।

आप इसे attr() का उपयोग करके भी कर सकते हैं लेकिन प्रोप बूलियन गुणों के लिए अधिक उपयुक्त है।

$(":checkbox[value=4]").attr("checked","true"); 

jQuery 1.6 के रूप में, .attr() विधि गुण कि सेट नहीं किया गया के लिए अनिर्धारित दिखाता है। निकालते हैं और डोम गुणों को बदलने के इस तरह के जाँच की, चयनित, या निष्क्रिय रूप तत्वों के राज्य के रूप में, .prop() विधि का उपयोग करने के लिए, jQuery doc

संपादित, टिप्पणी में पूछा, "कैसे लगेगा जटिल मूल्यों के साथ जवाब/लगता है अभिव्यक्ति, मूल्य की तरह की तरह = "स्मिथ, डेविड"

आप मान उस तरह स्मिथ, डेविड एकल उद्धरण पर की तरह संलग्न कर सकते हैं। तुम भी तरह jQuery द्वारा इस्तेमाल किया चरित्र का उपयोग कर सकते #,।, $ आदि, अद्यतन पहेलीदेखें।

$("input[type=checkbox][value='#Smith, David$']").attr("checked","true"); 
+0

यह काम करता है, धन्यवाद – palAlaa

+1

आपका स्वागत है – Adil

+0

मुझे आधे घंटे चुरा लिया: आपके दूसरे कोड उदाहरण में अर्धविराम बुराई है। जब आप पूरी लाइन ('$ (" इनपुट [प्रकार = चेकबॉक्स] [मूल्य = 5] ") की प्रतिलिपि बनाते हैं। प्रोप (" चेक ", सत्य); ') और इसे अपनी स्क्रिप्ट में पेस्ट करें, सब्लिमेटेक्स्ट + जेएसहिंट (मेरे मामले में) त्रुटि 'अप्रत्याशित' फेंक देगा। ब्राउज़र ** आपके कोड को 'अप्रत्याशित टोकन ILLEGAL' त्रुटि के साथ निष्पादित करना बंद कर देता है। अर्धविराम को हटाने और इसे "ताजा" के साथ बदलने में मेरी मदद की गई (मेरी डीबगिंग निराशा की कल्पना करें ...) मुझे लगता है कि एक छिपा हुआ एसीआई-चार या एसएच –

0
$(":checkbox[value=5]").attr("checked",true);​​​ 
3
$("input:checkbox[value='5']").attr("checked","true") 
7
$(":checkbox").filter(function() { 
    return this.value == '5'; 
}).prop("checked","true");​ 

DEMO

आप विभिन्न मूल्यों के लिए यह तो का उपयोग यह सामान्य निम्नलिखित की तरह बनाना चाहते हैं:

function checkWithValue(val) { 
    $(":checkbox").filter(function() { 
     return this.value == val; 
    }).prop("checked", "true"); 
} 


checkWithValue(5);​ 

DEMO

1

यह वर्ग अभ्यास

$(":checkbox").filter(["value":5]).prop("checked","true"); 
0
$("#catalogTBL").find("input[type=checkbox][value='snet']").prop("checked", true); 

साथ भी काम करता है यही एक रास्ता है कि मैं इस काम करने के लिए मिल सकता है था। एक टेबल में एक चेकबॉक्स खोज रहे हैं।

2

मेरे पास गतिशील मूल्य थे जिन्हें लूप करने की आवश्यकता थी। यह मेरे लिए काम करता है:

for (var i = 0, len = value.length; i < len; i++) { 
    $("#form-name").find("input[type=checkbox][name='fName']").filter(function() { 
    return this.value == values[i]; 
    }).prop("checked", true); 
} 

आशा है कि किसी को मदद मिलेगी।

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