একটি মান সহ রেডিও গ্রুপ থেকে নির্বাচিত রেডিও সেট করুন


153

আমি কেন এ নিয়ে লড়াই করছি?

আমার একটি মান আছে: 5

আমি কীভাবে 5 টির মান সহ গ্রুপ "মাইগ্রুপ" এর রেডিও বোতামটি চেক করব?

$("input[name=mygroup]").val(5); // doesn't work?

উত্তর:


351

সাহায্যে অ্যাট্রিবিউট নির্বাচক সঙ্গতিপূর্ণ মান সহ ইনপুট উপাদান নির্বাচন করতে পারেন। তারপরে আপনাকে এটিকে ব্যবহার করে বিশদটি স্পষ্টভাবে সেট করতে হবে .attr:

var value = 5;
$("input[name=mygroup][value=" + value + "]").attr('checked', 'checked');

JQuery 1.6, আপনি .propবুলিয়ান মান সহ পদ্ধতিটিও ব্যবহার করতে পারেন (এটি পছন্দসই পদ্ধতি হওয়া উচিত):

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

মনে রাখবেন আপনাকে প্রথমে একটি রেডিও বোতাম গোষ্ঠীর অধীনে যে কোনও রেডিও বোতাম থেকে চেক করা বৈশিষ্ট্যটি সরিয়ে ফেলতে হবে তবেই আপনি সেই রেডিও বোতাম গ্রুপের রেডিও বোতামের একটিতে চেক করা সম্পত্তি / বৈশিষ্ট্য যুক্ত করতে সক্ষম হবেন।

একটি রেডিও বোতাম গ্রুপের সমস্ত রেডিও বোতাম থেকে চেক করা অ্যাট্রিবিউট সরানোর কোড -

$('[name="radioSelectionName"]').removeAttr('checked');

.prop ( 'পরীক্ষিত', সত্য) সম্ভবত ভালো বা .is () হল
bladefist

3
@ ব্লাডিফিস্ট: .isএখানে সহায়তা করবে না, তবে আমি তাতে একমত হই .prop। এটি তখন ফিরে পাওয়া যায় নি;) আমার উত্তর আপডেট করবে। ধন্যবাদ!
ফেলিক্স ক্লিং

4
যদি রেডিও বোতামটির মান দশমিক হয়, আপনার মানটি উদ্ধৃতিতে রাখা দরকার
রবার্ট

1
@ রবার্ট: হ্যাঁ, সম্ভবত ডকুমেন্টেশন থেকে : "হয় একটি অব্যক্ত একক শব্দ বা উদ্ধৃত স্ট্রিং হতে পারে।"
ফেলিক্স ক্লিং

5
জনাথনের উত্তর দেখুন। JQuery ডক্সগুলি দেখায় যা .val()রেডিও বা চেকবক্স গ্রুপগুলিতে মান নির্ধারণকে সমর্থন করে। এই উত্তরের কৌশলটি প্রযুক্তিগতভাবে কার্যকর হয় তবে এটি চক্রাকার এবং অনেক কম পাঠযোগ্য / স্মরণীয়।
জিঙ্গলেস্তুলা

144

রেডিও এবং চেকবক্স চেক করার আরও ভাল উপায় আছে; আপনাকে কোনও কাঁচা মানের পরিবর্তে ভাল পদ্ধতিতে মানগুলির একটি অ্যারে পাস করতে হবে

দ্রষ্টব্য: আপনি যদি সহজেই মানটি কোনও অ্যারের ভিতরে না দিয়ে পাস করেন তবে এর ফলে "মাইগ্রুপ" এর সমস্ত মানকে মান হিসাবে সেট করা হবে।

$("input[name=mygroup]").val([5]);

এখানে jQuery ডক যা এটি কীভাবে কাজ করে তা ব্যাখ্যা করে: http://api.jquery.com/val/#val-value

আর .val([...])এছাড়াও মত ফর্ম উপাদানের সঙ্গে কাজ করে <input type="checkbox">, <input type="radio">এবং <option>একটি ভেতরে গুলি <select>

অ্যারের উপাদানগুলির মধ্যে একটির সাথে মেলে এমন একটি মানযুক্ত ইনপুট এবং বিকল্পগুলি চেক বা নির্বাচন করা হবে, যখন অ্যারের উপাদানগুলির সাথে একটির সাথে মেলে না এমন মান রয়েছে তাদের চেক বা নির্বাচন না করা হবে

এই কাজটি প্রমাণ করে ফিডল: https://jsfiddle.net/92nekvp3/


গৃহীত উত্তর (ভাল, হওয়া উচিত)। JQuery 1.0 হিসাবে, ডক্স থেকে সর্বশেষ উদাহরণটি দেখুন (নীচে স্ক্রোল করুন): api.jquery.com/val এখানে অনুলিপি করেছেন: jsfiddle.net/JoePC/w1f9ykso
জোপিসি

সমস্ত ইনপুট মান সেট করার জন্য এটি একটি দুর্দান্ত এবং ধারাবাহিক উপায়। খুব খারাপ এটি সম্পর্কে শিখতে আমার 6 বছর সময় লেগেছে।
জেফ লোরি

1
গোষ্ঠীতে আমার সমস্ত মান কেন মানটি পরীক্ষা করার পরিবর্তে উত্তীর্ণ মানটিতে সেট হয়ে যাচ্ছে তা নির্ধারণের চেষ্টা করার জন্য বেশ কিছুক্ষণ ব্যয় করলেন। দেখা যাচ্ছে আমি মানটি নিজেই দিয়েছি, কোনও অ্যারের মধ্যে নয়।
অক্সিজেন



7

উপরোক্ত উল্লিখিত মত হিসাবে যখন আপনি বৈশিষ্ট্যটির মান পরিবর্তন করেন তখন changeইভেন্টটি ট্রিগার হয় না তাই যদি কিছু কারণে প্রয়োজন হয় তবে আপনি এটির মতো ট্রিগার করতে পারেন

$('input[name=video_radio][value="' + r.data.video_radio + '"]')
       .prop('checked', true)
       .trigger('change');


1

অথবা আপনি কেবল এটিতে মান বৈশিষ্ট্য লিখতে পারেন:

$(':radio[value=<yourvalue>]').attr('checked',true);

এটি আমার পক্ষে কাজ করে।


0
var key = "Name_radio";
var val = "value_radio";
var rdo = $('*[name="' + key + '"]');
if (rdo.attr('type') == "radio") {
 $.each(rdo, function (keyT, valT){
   if ((valT.value == $.trim(val)) && ($.trim(val) != '') && ($.trim(val) != null))

   {
     $('*[name="' + key + '"][value="' + (val) + '"]').prop('checked', true);
   }
  })
}

4
আপনার কোডটি আপনার উত্তরে কী করে দয়া করে ব্যাখ্যা করতে পারেন? কমপক্ষে একটি বাক্য বা তাই। এবং কীভাবে এটি সমাধান করে। ধন্যবাদ.
অ্যালেক্স

0

খাঁটি জাভাস্ক্রিপ্ট সংস্করণ:

document.querySelector('input[name="myradio"][value="5"]').checked = true;

-1
$('input[name="mygroup"]').val([5])

1
ইতিমধ্যে সরবরাহ করা অন্যান্য সমাধানগুলির চেয়ে আপনার সমাধানটি কী আলাদা করে তোলে তা ব্যাখ্যা করতে পারেন?
জিওভানি ভেরকাটারেন

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