javascript मुझे कैसे पता चलेगा कि jQuery के माध्यम से कौन सा रेडियो बटन चुना गया है?
मेरे पास दो रेडियो बटन हैं और चयनित एक के मूल्य को पोस्ट करना चाहते हैं। मैं jQuery के साथ मूल्य कैसे प्राप्त कर सकता हूं?
मैं उन्हें इस तरह से प्राप्त कर सकता हूं:
$("form :radio")
मुझे कैसे पता चलेगा कि कौन सा चुना गया है?
यह काम करना चाहिए:
$("input[name='radioName']:checked").val()
इनपुट के चारों ओर उपयोग किए गए नोट को नोट करें: पीटर जे के समाधान की तरह चेक किया गया है और नहीं
यदि आप केवल बूलियन मान चाहते हैं, यानी यदि यह चेक किया गया है या इसे आजमाएं नहीं:
$("#Myradio").is(":checked")
एक और विकल्प है:
$('input[name=radioName]:checked').val()
यहां बताया गया है कि मैं फॉर्म कैसे लिखूंगा और चेक किए गए रेडियो को प्राप्त करने के तरीके को संभालेगा।
MyForm नामक एक फॉर्म का उपयोग करना:
<form id='myForm'>
<input type='radio' name='radio1' class='radio1' value='val1' />
<input type='radio' name='radio1' class='radio1' value='val2' />
...
</form>
फॉर्म से मूल्य प्राप्त करें:
$('#myForm .radio1:checked').val();
यदि आप फॉर्म पोस्ट नहीं कर रहे हैं, तो मैं इसका उपयोग करके इसे और सरल बना दूंगा:
<input type='radio' class='radio1' value='val1' />
<input type='radio' class='radio1' value='val2' />
फिर चेक मूल्य प्राप्त हो जाता है:
$('.radio1:checked').val();
इनपुट पर कक्षा का नाम रखने से मुझे आसानी से इनपुट स्टाइल करने की अनुमति मिलती है ...
एक जेएसएफ जेनरेट रेडियो बटन में ( <h:selectOneRadio>
टैग का उपयोग करके), आप यह कर सकते हैं:
radiobuttonvalue = jQuery("input[name='form_id\:radiobutton_id']:checked").val();
जहां selectOneRadio ID radiobutton_id है और फॉर्म आईडी form_id है ।
इंगित किए गए नाम के बजाय नाम का उपयोग करना सुनिश्चित करें, क्योंकि jQuery इस विशेषता का उपयोग करता है ( नाम जेएसएफ द्वारा नियंत्रण आईडी जैसा स्वचालित रूप से जेनरेट किया जाता है)।
साथ ही, जांचें कि क्या उपयोगकर्ता कुछ भी नहीं चुनता है।
var radioanswer = 'none';
if ($('input[name=myRadio]:checked').val() != null) {
radioanswer = $('input[name=myRadio]:checked').val();
}
यह ठीक काम करता है
$('input[type="radio"][class="className"]:checked').val()
:checked
चयनकर्ता checkboxes
, radio buttons
और चुनिंदा तत्वों के लिए काम करता है। केवल चयनित तत्वों के लिए, :selected
चयनकर्ता का उपयोग करें।
के लिए एपीआई :checked Selector
चयनित रेडियो का मूल्य प्राप्त करने के लिए जो कक्षा का उपयोग करता है:
$('.class:checked').val()
इसे इस्तेमाल करो:
value = $('input[name=button-name]:checked').val();
यदि आपके पास केवल 1 फॉर्म पर रेडियो बटन का 1 सेट है, तो jQuery कोड इस प्रकार जितना आसान है:
$( "input:checked" ).val()
जावास्क्रिप्ट सरणी में सभी रेडियो बटन मानों को पुनर्प्राप्त करने के लिए निम्नलिखित jQuery कोड का उपयोग करें:
var values = jQuery('input:checkbox:checked.group1').map(function () {
return this.value;
}).get();
इसे पाने का एक और तरीका:
$("#myForm input[type=radio]").on("change",function(){
if(this.checked) {
alert(this.value);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="myForm">
<span><input type="radio" name="q12_3" value="1">1</span><br>
<span><input type="radio" name="q12_3" value="2">2</span>
</form>
$(function () {
// Someone has clicked one of the radio buttons
var myform= 'form.myform';
$(myform).click(function () {
var radValue= "";
$(this).find('input[type=radio]:checked').each(function () {
radValue= $(this).val();
});
})
});
आपको :checked
चयनकर्ता के साथ पहुंच की आवश्यकता है:
इस दस्तावेज़ को जांचें:
एक उदाहरण:
$('input[name=radioName]:checked', '#myForm').val()
$('#myForm input').on('change', function() {
$('#val').text($('input[name=radioName]:checked', '#myForm').val());
});
#val {
color: #EB0054;
font-size: 1.5em;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h3>Radio value: <span id='val'><span></h3>
<form id="myForm">
<input type="radio" name="radioName" value="a"> a <br>
<input type="radio" name="radioName" value="b"> b <br>
<input type="radio" name="radioName" value="c"> c <br>
</form>