JQuery সহ একটি রেডিও বোতাম কীভাবে চেক করবেন?


889

আমি jQuery সহ একটি রেডিও বোতাম চেক করার চেষ্টা করি। আমার কোডটি এখানে:

<form>
    <div id='type'>
        <input type='radio' id='radio_1' name='type' value='1' />
        <input type='radio' id='radio_2' name='type' value='2' />
        <input type='radio' id='radio_3' name='type' value='3' /> 
    </div>
</form>

এবং জাভাস্ক্রিপ্ট:

jQuery("#radio_1").attr('checked', true);

কাজ করে না:

jQuery("input[value='1']").attr('checked', true);

কাজ করে না:

jQuery('input:radio[name="type"]').filter('[value="1"]').attr('checked', true);

কাজ করে না:

আপনার কি অন্য ধারণা আছে? আমি কী মিস করছি?


1
আপনার প্রতিক্রিয়া জন্য ধন্যবাদ! আমি সমস্যাটি খুঁজে পেয়েছি। আসলে, এটি করার প্রথম দুটি উপায় কাজ করছে। বিন্দুটি হ'ল আমি jqueryUI ব্যবহার করেছি 3 টি রেডিও বোতামের সেটকে এই কোডের সাহায্যে একটি বোতামে রূপান্তর করতে: jQuery ("# ​​টাইপ") button বোতামসেট (); তবে রেডিও চেক করার আগে এই পরিবর্তন করা রেডিও সেটটি ভেঙে ফেলছিল (কেন জানি না)। অবশেষে, আমি রেডিওটি যাচাই করার পরে বোতামসেট কলটি রেখেছি এবং এটি অনবদ্যভাবে কাজ করে।
অ্যালেক্সিস

$ ("ইনপুট: রেডিও [মান = '2']") ব্যবহার করুন prop প্রপ ('পরীক্ষিত', সত্য); এখানে freakyjolly.com/…
কোড স্পাই

উত্তর:


1469

JQuery এর সমান বা তার বেশি সংস্করণ (> =) ১.6 এর জন্য, ব্যবহার করুন:

$("#radio_1").prop("checked", true);

(<) 1.6 এর আগের সংস্করণগুলির জন্য, ব্যবহার করুন:

$("#radio_1").attr('checked', 'checked');

টিপ: আপনি কল করতে click()বা change()পরে রেডিও বোতামেও যেতে চাইতে পারেন । আরও তথ্যের জন্য মন্তব্য দেখুন।


80
JQuery 1.9 বা উচ্চতর এই সমাধান কাজ করবে না। ব্যবহার করুন $ ("# রেডিও_1")। প্রপ ("পরীক্ষিত", সত্য); পরিবর্তে.
installero

12
@ ইনস্টেলোরো আসলে, prep১.6 থেকে সঠিক এবং ১.৯ থেকে প্রয়োজনীয়।
জন ডিভোরাক

42
.change()পৃষ্ঠার অন্য কোনও ইভেন্টকে ট্রিগার করতে শেষ পর্যন্ত যুক্ত হওয়া সহায়ক ।
ফক্সিনি

13
এই উত্তরটি পুনরায় সাজানো বুদ্ধিমানের কাজ হতে পারে যাতে এটি .propস্পষ্টভাবে সঠিক উত্তর এবং .attrপদ্ধতিটি jQuery <1.6 এর জন্য একটি নোট।
প্যাট্রিক

22
যদি আপনি চান রেডিও গ্রুপের অন্যান্য রেডিও বোতামগুলি সঠিকভাবে ব্যবহার করতে আপডেট করুন$("#radio_1").prop("checked", true).trigger("click");
পল লেবেউ

256

এটা চেষ্টা কর.

এই উদাহরণে, আমি এটির ইনপুট নাম এবং মান দিয়ে টার্গেট করছি

$("input[name=background][value='some value']").prop("checked",true);

জেনে রাখা ভাল: বহু-শব্দের মানের ক্ষেত্রে এটি অ্যাস্টোস্ট্রোফসের কারণেও কার্যকর হবে।


5
সম্ভবত এটিই সবচেয়ে ভাল উপায়, অন্যরা সেখানে ফাংশনটিকে দ্বিতীয়বার অকেজো করে রাখার প্রবণতা রাখে যখন এটি প্রত্যাশার মতোই কাজ করে
রায় টোলেডো

খুঁজে পাওয়া গেল যেহেতু কেবলমাত্র একটিই নির্বাচন করা যেতে পারে, তাই $ ('ইনপুট [নাম = "টাইপ"]: চেক করা') val ভাল () এছাড়াও দুর্দান্ত।
হুগি

সম্প্রসারিত করুন. সাধারণ ধারণাটি হ'ল একটি রেডিও বোতামটি এর বৈশিষ্ট্যগুলির সাথে সম্বোধন করে চেক করা - নাম এবং ,চ্ছিকভাবে মান। আমি নিশ্চিত না যে আপনি এটি দিয়ে কী সম্পাদন করতে চাইছেন, যেহেতু কেবলমাত্র নাম বৈশিষ্ট্য এবং: চেক করা সিউডো নির্বাচক ব্যবহৃত হয়েছে। এবং আপনি ভালটিও পুনরুদ্ধার করছেন, যা বিভ্রান্তিকর। ধন্যবাদ
ভ্লাদিমির জজুরিক

2
আমি আমার সমস্ত রেডিওতে একটি "আইডি" যুক্ত করতে যাচ্ছিলাম, তবে এই পদ্ধতিটি নির্দোষভাবে কাজ করেছিল worked তবে মনে রাখবেন যে যখন আপনার মানটি বহু-শব্দের হয় ("রঙ বেগুনি" বলুন), আপনাকে উপযুক্ত উদ্ধৃতি অন্তর্ভুক্ত করতে হবে: $("input[name=background][value='color purple']").prop("checked",true);
ত্রিস্তান টাও

3
নির্বাচিত উত্তরের চেয়ে অনেক ভাল! ঠিক আমি খুঁজছেন ছিল কি. এটি সাধারণ, যদিও নির্বাচিত উত্তর নির্দিষ্ট। অান্তরিক ধন্যবাদ.
গারবেজগিগো

96

আরও একটি ফাংশন প্রোপ () যা jQuery 1.6 এ যুক্ত করা হয়, এটি একই উদ্দেশ্যে কাজ করে।

$("#radio_1").prop("checked", true); 

13
attr('checked', true)আমার জন্য jQuery 1.9 দিয়ে কাজ করা বন্ধ করে দিয়েছে, এটিই সমাধান!
পাসকাল

1
দেখে মনে হচ্ছে prop("checked", true)এটি কাজ করছে attr('checked', 'checked')না,
টমাসজ কুটার

@ টমাসকুটটার আমি প্রপ ব্যবহার করার পরামর্শ দিচ্ছি কারণ ডম সম্পত্তি যাচাই করা হয়েছে এটিই আচরণের উপর প্রভাব ফেলতে পারে - তবে এটি আশ্চর্যজনক - এই ফিডলে ( jsfiddle.net/KRXeV ) attr('checked', 'checked')আসলে x)
jave.web

এখানে একটি ভাল দ্ব্যর্থতা নিরসন হয় stackoverflow.com/questions/5874652/prop-vs-attr
code_monk

81

সংক্ষিপ্ত এবং পড়তে সহজ বিকল্প:

$("#radio_1").is(":checked")

এটি সত্য বা মিথ্যা প্রত্যাবর্তন করে, তাই আপনি এটি "যদি" বিবৃতিতে ব্যবহার করতে পারেন।


5
ধন্যবাদ! এটি আমি যা খুঁজছিলাম, কিন্তু (এফওয়াইআই) ওপি জিজ্ঞাসা করছিল কীভাবে রেডিও বোতামটি সেট করবেন, মানটি পাবেন না। ("চেক" শব্দটি প্রশ্নটিকে বিভ্রান্তিকর করে
তুলেছিল fer

31

এটা চেষ্টা কর.

মানটি ব্যবহার করে রেডিও বোতামটি পরীক্ষা করতে এটি ব্যবহার করুন।

$('input[name=type][value=2]').attr('checked', true); 

অথবা

$('input[name=type][value=2]').attr('checked', 'checked');

অথবা

$('input[name=type][value=2]').prop('checked', 'checked');

আইডি ব্যবহার করে রেডিও বোতামটি পরীক্ষা করতে এটি ব্যবহার করুন।

$('#radio_1').attr('checked','checked');

অথবা

$('#radio_1').prop('checked','checked');


13

$.propভাল উপায় হল:

$(document).ready(function () {                            
    $("#radio_1").prop('checked', true);        
});

এবং আপনি এটি নীচের মত পরীক্ষা করতে পারেন:

$(document).ready(function () {                            
    $("#radio_1, #radio_2", "#radio_3").change(function () {
        if ($("#radio_1").is(":checked")) {
            $('#div1').show();
        }
        else if ($("#radio_2").is(":checked")) {
            $('#div2').show();
        }
        else 
            $('#div3').show();
    });        
});

9

তোমাকে করতে হবে

jQuery("#radio_1").attr('checked', 'checked');

এটি এইচটিএমএল বৈশিষ্ট্য


7

সম্পত্তি nameযদি কাজ না করে তবে তা ভুলে যাবেন না id। এই উত্তরটি এমন লোকদের জন্য যারা idআপনি এখানে কীভাবে টার্গেট করতে চান।

$('input[id=element_id][value=element_value]').prop("checked",true);

কারণ সম্পত্তি nameআমার পক্ষে কাজ করে না। আপনি আশেপাশে idএবং nameদ্বিগুণ / একক উদ্ধৃতি সহ না তা নিশ্চিত করুন ।

চিয়ার্স!



6

এটা চেষ্টা কর

$(document).ready(function(){
    $("input[name='type']:radio").change(function(){
        if($(this).val() == '1')
        {
          // do something
        }
        else if($(this).val() == '2')
        {
          // do something
        }
        else if($(this).val() == '3')
        {
          // do something
        }
    });
});

6

আশ্চর্যজনকভাবে, সর্বাধিক জনপ্রিয় এবং স্বীকৃত উত্তর মন্তব্য থাকা সত্ত্বেও উপযুক্ত ইভেন্টটিকে ট্রিগার করতে উপেক্ষা করে। আপনি যে আবেদন করেছেন তা নিশ্চিত করুন .change() , অন্যথায় সমস্ত "পরিবর্তনের" বাইন্ডিংগুলি এই ইভেন্টটিকে উপেক্ষা করবে।

$("#radio_1").prop("checked", true).change();

5
$("input[name=inputname]:radio").click(function() {
    if($(this).attr("value")=="yes") {
        $(".inputclassname").show();
    }
    if($(this).attr("value")=="no") {
        $(".inputclassname").hide();
    }
});

5

মান পান:

$("[name='type'][checked]").attr("value");

মান সেট করুন:

$(this).attr({"checked":true}).prop({"checked":true});

রেডিও বাটন ক্লিক করে অ্যাটার অ্যাটাক করা ক্লিক করুন:

$("[name='type']").click(function(){
  $("[name='type']").removeAttr("checked");
  $(this).attr({"checked":true}).prop({"checked":true});
});

5

আমাদের এটি বলা উচিত যে এটি একটি radioবোতাম। সুতরাং নিম্নলিখিত কোড দিয়ে চেষ্টা করুন।

$("input[type='radio'][name='userRadionButtonName']").prop('checked', true);

5

JQuery UI ব্যবহার করার সময় কেউ যদি এটি অর্জন করার চেষ্টা করে তবে আপনাকে আপডেট করা মান প্রতিফলিত করতে UI চেকবক্স অবজেক্টটি রিফ্রেশ করতে হবে:

$("#option2").prop("checked", true); // Check id option2
$("input[name='radio_options']").button("refresh"); // Refresh button set

4

আমি এই কোডটি ব্যবহার করি:

আমি ইংরাজির জন্য দুঃখিত

var $j = jQuery.noConflict();

$j(function() {
    // add handler
    $j('#radio-1, #radio-2').click(function(){

        // find all checked and cancel checked
        $j('input:radio:checked').prop('checked', false);

        // this radio add cheked
        $j(this).prop('checked', true);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset class="section">
  <legend>Radio buttons</legend>
  <label>
    <input type="radio" id="radio-1" checked>
    Option one is this and that&mdash;be sure to include why it's great
  </label>
  <br>
  <label>
    <input type="radio" id="radio-2">
    Option two can be something else
  </label>
</fieldset>


4

উদাহরণ দিয়ে এটি চেষ্টা করুন

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="myForm">
<input type="radio" name="radio" value="first"/> 1 <br/>
<input type="radio" name="radio" value="second"/> 2 <br/>
</form>


<script>
$(document).ready(function () {
    $('#myForm').on('click', function () {
        var value = $("[name=radio]:checked").val();

        alert(value);
    })
});
</script>


3
function rbcitiSelction(e) {
     debugger
    $('#trpersonalemail').hide();
    $('#trcitiemail').show();
}

function rbpersSelction(e) {
    var personalEmail = $(e).val();
    $('#trpersonalemail').show();
    $('#trcitiemail').hide();
}

$(function() {  
    $("#citiEmail").prop("checked", true)
});

2
$("#radio_1").attr('checked', true);
//or
$("#radio_1").attr('checked', 'checked');

2
$("#radio_1").attr('checked', true);এটি কাজ করবে না। যেমনটি ওপি
জনপি

2
দয়া করে আপনার
উত্তরে

2

আমি বর্ধিত হওয়ার জন্য কিছু সম্পর্কিত উদাহরণ পেয়েছি, আমি কীভাবে একটি নতুন শর্ত যুক্ত করতে চাই তা সম্পর্কে, বলুন, আমি যদি প্যাভারস এবং প্যাভিং স্ল্যাব ব্যতীত প্রকল্পের স্থিতির মানটিতে ক্লিক করার পরে রঙিন স্কিমটি লুকিয়ে রাখতে চাই।

উদাহরণ এখানে রয়েছে:

$(function () {
    $('#CostAnalysis input[type=radio]').click(function () {
        var value = $(this).val();

        if (value == "Supply & Lay") {
            $('#ul-suplay').empty();
            $('#ul-suplay').append('<fieldset data-role="controlgroup"> \

http://jsfiddle.net/m7hg2p94/4/


2

এছাড়াও, আপনি উপাদানটি পরীক্ষা করা হয়েছে কিনা তা পরীক্ষা করতে পারেন:

if ($('.myCheckbox').attr('checked'))
{
   //do others stuff
}
else
{
   //do others stuff
}

আপনি চেক না করা উপাদানটির জন্য চেক করতে পারেন:

$('.myCheckbox').attr('checked',true) //Standards way

আপনি এই উপায় থেকেও চেক করতে পারেন:

$('.myCheckbox').removeAttr('checked')

আপনি রেডিও বোতামটি পরীক্ষা করতে পারেন:

JQuery এর সমান বা তার বেশি সংস্করণ (> =) ১.6 এর জন্য, ব্যবহার করুন:

$("#radio_1").prop("checked", true);

(<) 1.6 এর আগের সংস্করণগুলির জন্য, ব্যবহার করুন:

$("#radio_1").attr('checked', 'checked');

2

আমি jquery-1.11.3.js ব্যবহার করেছি

বেসিক সক্ষম এবং অক্ষম

টিপস 1: (রেডিও বোতামের ধরণের সাধারণ অক্ষম করুন ও সক্ষম করুন)

$("input[type=radio]").attr('disabled', false);
$("input[type=radio]").attr('disabled', true); 

টিপস 2: (আইডি নির্বাচনকারী ব্যবহার করে () বা অ্যাটর () ব্যবহার করে)

$("#paytmradio").prop("checked", true);
$("#sbiradio").prop("checked", false);

jQuery("#paytmradio").attr('checked', 'checked'); // or true this won't work
jQuery("#sbiradio").attr('checked', false);

টিপস 3: (শ্রেণি নির্বাচক প্রপ () বা আর্ট () ব্যবহার করে)

$(".paytm").prop("checked", true);
$(".sbi").prop("checked", false);

jQuery(".paytm").attr('checked', 'checked'); // or true
jQuery(".sbi").attr('checked', false);

অন্যান্য টিপস

$("#paytmradio").is(":checked")   // Checking is checked or not
$(':radio:not(:checked)').attr('disabled', true); // All not check radio button disabled

$('input[name=payment_type][value=1]').attr('checked', 'checked'); //input type via checked
 $("input:checked", "#paytmradio").val() // get the checked value

index.html

<div class="col-md-6">      
    <label class="control-label" for="paymenttype">Payment Type <span style="color:red">*</span></label>
    <div id="paymenttype" class="form-group" style="padding-top: inherit;">
        <label class="radio-inline" class="form-control"><input  type="radio" id="paytmradio"  class="paytm" name="paymenttype" value="1" onclick="document.getElementById('paymentFrm').action='paytmTest.php';">PayTM</label>
        <label class="radio-inline" class="form-control"><input  type="radio" id="sbiradio" class="sbi" name="paymenttype" value="2" onclick="document.getElementById('paymentFrm').action='sbiTest.php';">SBI ePAY</label>
    </div>
</div>

2

প্রোপ () মেহটড ব্যবহার করুন

এখানে চিত্র বর্ণনা লিখুন

উত্স লিঙ্ক

<p>
    <h5>Radio Selection</h5>

    <label>
        <input type="radio" name="myRadio" value="1"> Option 1
    </label>
    <label>
        <input type="radio" name="myRadio" value="2"> Option 2
    </label>
    <label>
        <input type="radio" name="myRadio" value="3"> Option 3
    </label>
</p>

<p>
    <button>Check Radio Option 2</button>
</p>


<script>
    $(function () {

        $("button").click(function () {
            $("input:radio[value='2']").prop('checked',true);
        });

    });
</script>

1

এটা চেষ্টা কর

 $("input:checked", "#radioButton").val()

যদি চেক রিটার্ন চেক True না হয় তবেFalse

jQuery v1.10.1

1

কিছু সময় উপরে সমাধানগুলি কাজ করে না, তারপরে আপনি নীচে চেষ্টা করতে পারেন:

jQuery.uniform.update(jQuery("#yourElementID").attr('checked',true));
jQuery.uniform.update(jQuery("#yourElementID").attr('checked',false));

আরেকটি উপায় যা আপনি চেষ্টা করতে পারেন তা হ'ল:

jQuery("input:radio[name=yourElementName]:nth(0)").attr('checked',true);

1
ইউনিফর্ম একটি jQuery প্লাগইন যা ফর্মগুলি সুন্দর করে তোলে, তবে এটি অতিরিক্ত উপাদান যুক্ত করে তা করে। আমি যখনই চেক করা মান আপডেট করি তখন অতিরিক্ত অ্যালিমেন্টের অবস্থা আপডেট হয় না, যা একটি অদৃশ্য ইনপুট যা চেক করা হয় না, তবে চাক্ষুষ দেখা যায় এমন একটি দৃশ্যমান ব্যাকগ্রাউন্ড উপাদান সহ। jQuery.uniform.update()সমাধান কি!
ডেনিলসন সা মিয়া

1

এটা চেষ্টা কর:

$(document).ready(function(){
  $("#Id").prop("checked", true).checkboxradio('refresh');
});

এটি checkboxradioপ্লাগইনটির জন্য ফাইলটি অন্তর্ভুক্ত না করে কাজ করবে না , যা যখন আপনি কেবল jQuery এর বিল্ট ফাংশনগুলি এটি সম্পাদন করতে ব্যবহার করতে পারেন (গ্রহণযোগ্য উত্তর দেখুন) তখন তা অর্থহীন।
নাথান

1

আমার ঠিক একইরকম সমস্যা রয়েছে, একটি সহজ সমাধান কেবলমাত্র ব্যবহার করা:

.click()

আপনি যদি ফাংশন কল করার পরে রেডিও রিফ্রেশ করেন তবে অন্য কোনও সমাধান কাজ করবে।


1
কল ক্লিক কখনও কখনও
ie9- এ

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.