javascript w3schools jQuery-তার টেক্সট বর্ণনা মাধ্যমে একটি নির্বাচিত নিয়ন্ত্রণ নির্বাচিত মান সেটিং



jquery w3schools (16)

আমার একটি নির্বাচিত নিয়ন্ত্রণ আছে, এবং একটি জাভাস্ক্রিপ্ট পরিবর্তনশীল আমি একটি টেক্সট স্ট্রিং আছে।

JQuery ব্যবহার করে আমি নির্বাচিত বর্ণনার নির্বাচিত উপাদানটি আমার পাঠ্য বর্ণনার সাথে আইটেম (মানটির বিপরীতে যা আমার নেই) হতে চাই।

আমি মান দ্বারা এটি সেটিং জানি খুব তুচ্ছ। যেমন

$("#my-select").val(myVal);

কিন্তু আমি টেক্সট বিবরণ মাধ্যমে এটি করতে একটু stumped করছি। আমি অনুমান করছি যে পাঠ্যের বিবরণ থেকে মান খুঁজে বের করার একটি উপায় থাকা দরকার, কিন্তু আমার মস্তিষ্ক শুক্রবার বিকেলে-ইডি এটি কাজ করতে সক্ষম হতে পারে।


আমি এই পরীক্ষা না, কিন্তু এই আপনার জন্য কাজ করতে পারে।

$("select#my-select option")
   .each(function() { this.selected = (this.text == myVal); });

এটি ব্যবহার করে দেখুন ... পাঠ্যটি myText দিয়ে বিকল্পটি নির্বাচন করুন

$("#my-Select option[text=" + myText +"]").attr("selected","selected");

jquery নির্বাচিতবক্স প্লাগইন দেখুন

selectOptions(value[, clear]): 

প্যারামিটার $("#myselect2").selectOptions("Value 1"); হিসাবে একটি স্ট্রিং ব্যবহার করে মান অনুসারে বিকল্প নির্বাচন করুন। বিকল্পগুলি নির্বাচন করুন $("#myselect2").selectOptions("Value 1"); , অথবা একটি নিয়মিত অভিব্যক্তি $("#myselect2").selectOptions(/^val/i);

আপনি ইতিমধ্যে নির্বাচিত বিকল্পগুলিও সাফ করতে পারেন: $("#myselect2").selectOptions("Value 2", true); নির্বাচন অপশন $("#myselect2").selectOptions("Value 2", true);


সব jQuery সংস্করণ জটিলতা এড়ানোর জন্য, আমি সত্যি সত্যি এই সত্যিই সহজ জাভাস্ক্রিপ্ট ফাংশন ব্যবহার করে সুপারিশ ...

function setSelectByValue(eID,val)
{ //Loop through sequentially//
  var ele=document.getElementById(eID);
  for(var ii=0; ii<ele.length; ii++)
    if(ele.options[ii].value==val) { //Found!
      ele.options[ii].selected=true;
      return true;
    }
  return false;
}

function setSelectByText(eID,text)
{ //Loop through sequentially//
  var ele=document.getElementById(eID);
  for(var ii=0; ii<ele.length; ii++)
    if(ele.options[ii].text==text) { //Found!
      ele.options[ii].selected=true;
      return true;
    }
  return false;
}

আমি এই ভাবে এটি (jQuery 1.9.1)

$("#my-select").val("Dutch").change();

দ্রষ্টব্য: পরিবর্তনটি ভুলবেন না (), এর জন্য আমাকে দীর্ঘ অনুসন্ধান করতে হয়েছিল :)


শুধু একটি পাশ নোট। আমার নির্বাচিত মান সেট করা হয় নি। এবং আমি নেট জুড়ে সব অনুসন্ধান ছিল। প্রকৃতপক্ষে আমাকে একটি ওয়েব পরিষেবা থেকে একটি কল পরে একটি মান নির্বাচন করতে হয়েছিল, কারণ আমি এটি থেকে তথ্য পেয়েছিলাম।

$("#SelectMonth option[value=" + DataFromWebService + "]").attr('selected', 'selected'); 
$("#SelectMonth").selectmenu('refresh', true);

তাই নির্বাচকদের রিফ্রেশ ছিল একমাত্র জিনিস যা আমি অনুপস্থিত ছিলাম।


এই এইচটিএমএল দেওয়া:

<select>
    <option value="0">One</option>
    <option value="1">Two</option>
</select>

JQuery v1.6 + জন্য বর্ণনা দ্বারা নির্বাচন করুন:

var text1 = 'Two';
$("select option").filter(function() {
    //may want to use $.trim in here
    return $(this).text() == text1; 
}).prop('selected', true);

1.6 এর নিচে jQuery সংস্করণের জন্য বর্ণনা এবং 1.4 এর চেয়ে বড় বা সমান : https://.com/a/3644500/31532

var text1 = 'Two';
$("select option").filter(function() {
    //may want to use $.trim in here
    return $(this).text() == text1; 
}).attr('selected', true);

উল্লেখ্য, এই পদ্ধতিটি 1.6 এর উপরে কিন্তু 1.9 এর চেয়েও কম সংস্করণগুলিতে কাজ করবে, এটি 1.6 থেকে অব্যবহৃত হয়েছে। এটা jQuery 1.9+ কাজ করবে না

পূর্ববর্তী সংস্করণের জন্য বর্ণনা দ্বারা নির্বাচন করুন:

val() উভয় ক্ষেত্রে হ্যান্ডেল করা উচিত। তুমি কি এটা দেখছো না?

উদাহরণ:

$('select').val('1'); // selects "Two"
$('select').val('Two'); // also selects "Two"

আমি জানি এটি একটি পুরানো পোস্ট, তবে আমি jQuery 1.10.3 এবং উপরের সমাধানগুলির সাহায্যে পাঠ্য নির্বাচন করতে পারিনি। আমি নিম্নলিখিত কোডটি ব্যবহার করে শেষ করেছি (স্পউলসনের সমাধানটির বৈচিত্র):

      var textToSelect = "Hello World";

      $("#myDropDown option").each(function (a, b) {
            if ($(this).html() == textToSelect ) $(this).attr("selected", "selected");
        });

এটা কেউ সাহায্য করে আশা করি।


 $("#Test").find("option:contains('two')").each(function(){
     if( $(this).text() == 'two' ) {
        $(this).attr("selected","selected");
     }
 });

যদি বিবৃতিটি "দুই" এবং "দুইটি" এর সাথে একটি সঠিক মিল না মিলিত হয়


এখানে খুব সহজ উপায়। প্লিজ এটা ব্যবহার করুন

$("#free").val("y").change();

$("#myselect option:contains('YourTextHere')").val();

আপনার পাঠ্য বিবরণ ধারণকারী প্রথম বিকল্পের মান ফিরে আসবে। এই পরীক্ষা এবং কাজ করে।


এই গ্রহণযোগ্য উত্তরটি সঠিক বলে মনে হচ্ছে না, যখন .val ('newValue') ফাংশনের জন্য সঠিক, এটির নামের দ্বারা একটি নির্বাচন পুনরুদ্ধার করার চেষ্টা করা আমার জন্য কাজ করে না, আমার আইডি এবং ক্লাসের নামটি আমার উপাদান পেতে ব্যবহার করতে হয়েছিল


Heres একটি সহজ বিকল্প। শুধু আপনার তালিকা বিকল্পটি সেট করুন এবং তার পাঠ্য নির্বাচিত মান হিসাবে সেট করুন:

$("#ddlScheduleFrequency option").selected(text("Select One..."));

 $('#theYear').on('change', function () {
 FY = $(this).find('option:selected').text();
 $('#theFolders').each(function () {
     $('option:not(:contains(' + FY + '))', this).hide();
 });
 $('#theFolders').val(0);
});

$('#theYear').on('mousedown', function () {
 $('#theFolders option').show().find('option:contains("Select")', this).attr('selected', 'selected');
});

এই লাইন কাজ করেছে:

$("#myDropDown option:contains(myText)").attr('selected', true);

1.7+ সহ সহজতম উপায় হল:

$("#myDropDown option:text=" + myText +"").attr("selected", "selected"); 

1.9+

$("#myDropDown option:text=" + myText +"").prop("selected", "selected"); 

পরীক্ষিত এবং কাজ করে।





jquery