2010-08-25 12 views
11

मैं भविष्य में एक jQueryUI रेडियो बटन के मान को पढ़ सकता हूं, हालांकि, मैं इसे प्रोग्रामेटिक रूप से सेट करने में सक्षम नहीं हूं। कोई फर्क नहीं पड़ता कि मैं रेडियो बटन के मूल्य को बदलने के लिए किस तरीके का उपयोग करता हूं, jQueryUI इंटरफ़ेस इसके इंटरफ़ेस को अपडेट नहीं करेगा।jQueryUI रेडियो/चेक बटन प्रोग्रामेटिक रूप से बदल नहीं रहे

<div id="radio"> 
    <input type="radio" name="radio" value="true" checked="checked" />Yes 
    <input type="radio" name="radio" value="false" />No 
</div> 

<script type="text/javascript"> 
    $('#radio').buttonset(); 

    // One of the many ways that won't work. 
    $('[name="radio"]:radio:checked').val("false"); 
</script> 
+0

आप jQuery UI का उपयोग कहां कर रहे हैं? –

उत्तर

20

एक बार जब आप मूल्य, इस तरह अद्यतन:

$('[name="radio"][value="false"]').attr("checked", true); 

आप, jQuery यूआई बताने के लिए इस तरह अद्यतन करने की आवश्यकता:

$('#radio').buttonset("refresh"); 

You can give it a try here

+0

जब मैंने उत्तर दिया तो सवाल का बटनसेट हिस्सा वहां नहीं था। :/ –

+0

मैंने कभी इस बारे में सोचा नहीं होगा। धन्यवाद। – rebelliard

+0

@Yanick - यह था ... उन्होंने शुरुआत से jQuery UI का उल्लेख किया, यही कारण है कि मेरी टिप्पणी आपके उत्तर से पहले भी पोस्ट की गई है :) –

4
$('[name="state"]:radio:checked').attr('checked', true); // checked 
$('[name="state"]:radio:checked').removeAttr('checked'); // unchecked 

** नोट **

$(':radio').val(); // same as $(':radio').attr('value'); 
इस प्रकार

:

$(':radio[checked]').val(); // -> the value of the first checked radio button found 
+0

मुझे पूरी तरह से खेद है। मैंने अभी नहीं सोचा था कि इस तरह के विवरणों के लिए बहुत कुछ होगा, यह देखते हुए कि एक नियमित रेडियो बटन कितना सीधे आगे है। ओओ/ – rebelliard

8

मैं आम तौर पर एक कार्य करें:

$('[name="radio"][value="false"]').attr("checked", true).trigger("change"); 

buttonset ("ताज़ा") कॉल परिवर्तन घटना जो केवल ट्रिगर नहीं है जब आप मूल्य प्रोग्राम के बदल रहे हैं के लिए बाध्य है - ट्रिगर इसे मैन्युअल ui को हल करती है मुद्दा है और आप जहां buttonset

1

है के बारे में चिंता की जरूरत नहीं है मैं आमतौर पर एक:

$('[name="radio"][value="false"]').prop("checked", true).trigger("change"); 

कृपया का उपयोग करें "attr" के बदले "सहारा" बदलने के लिए "जाँच" राज्य।

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