दिलचस्प पोस्ट
जब तक सभी ईएस 6 वादे पूरा नहीं होते, तब तक इंतजार करें, वादे भी अस्वीकार कर दिए गए एंड्रॉइड – बाइट से एमपी 3 बजाना वंशानुक्रम और बहुरूपता के बीच मुख्य अंतर क्या है? XML दस्तावेज़ों में भाग लेने के लिए मुझे कौन-कौन से पात्रों की आवश्यकता है? जावास्क्रिप्ट से ध्वनि चलाने के लिए क्रॉस-प्लेटफॉर्म, क्रॉस-ब्राउज़र तरीका? JQuery के साथ भागने की कुंजी के लिए कौन सी कुंजीकोड MATLAB में बड़ा डेटा प्लोटिंग यूआरएल Slugify एल्गोरिथ्म सी # में? सी # से कोड सी + + के लिए संभव है? मैं अपने एसएसपी.NET अनुप्रयोग में एसक्यूएल इंजेक्शन के हमलों से कैसे बच सकता हूं? आईओएस ऐप की अधिकतम मेमोरी बजट वर्ग चर और वर्ग उदाहरण चर के बीच अंतर? एलन हॉलब ने लिखा है, "क्या आपको मिलना चाहिए / फ़ंक्शंस सेट नहीं करना चाहिए", क्या वह सही है? अवधि में सीएसएस निश्चित चौड़ाई "SET NAMES" का उपयोग करना चाहे

jQuery – इसके टेक्स्ट विवरण के माध्यम से एक चयनित नियंत्रण का चयनित मान सेट करना

मेरे पास एक नियंत्रण है, और जावास्क्रिप्ट चर में मेरे पास टेक्स्ट स्ट्रिंग है I

JQuery का उपयोग करना मैं चुनिंदा नियंत्रण का चयनित तत्व सेट करना चाहता हूं, जिसके पास मेरे पास पाठ विवरण वाला आइटम है (मान के विपरीत, जो मेरे पास नहीं है)।

मैं जानता हूँ कि यह मूल्य के द्वारा स्थापित करना बहुत तुच्छ है जैसे

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

लेकिन मैं पाठ विवरण के माध्यम से ऐसा करने पर थोड़ा सा स्टम्प्ड हूं मुझे लगता है कि पाठ विवरण से मूल्य प्राप्त करने का एक तरीका होना चाहिए, लेकिन मेरा मस्तिष्क शुक्रवार दोपहर को भी इसे बाहर काम करने में सक्षम होने के लिए है।

वेब के समाधान से एकत्रित समाधान "jQuery – इसके टेक्स्ट विवरण के माध्यम से एक चयनित नियंत्रण का चयनित मान सेट करना"

इस HTML को देखते हुए:

 <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://stackoverflow.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" 

मैंने यह परीक्षण नहीं किया है, लेकिन यह आपके लिए काम कर सकता है

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

यह कोशिश करें … पाठ के साथ विकल्प चुनने के लिए myText

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

मैं इसे इस तरह से करता हूँ (jQuery 1.9.1)

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

नोट: परिवर्तन को मत भूलना (), मुझे उसके कारण लंबे समय तक खोजना पड़ा 🙂

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

आपके टेक्स्ट विवरण वाले पहले विकल्प का मान वापस करेगा। यह परीक्षण किया और काम करता है

सभी 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.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"); } }); 

यदि बयान "दो" और "दो तीन" के साथ सटीक मिलान करता है तो इसका मिलान नहीं किया जाएगा

यह लाइन काम करती है:

 $("#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 selectbox प्लगइन पर एक नज़र रखना

 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);

बस एक तरफ नोट पर मेरा चयनित मान सेट नहीं किया जा रहा था। और मुझे नेट पर खोज हुई थी। वास्तव में मुझे वेब सेवा से वापस कॉल के बाद एक मान चुनना पड़ता था, क्योंकि मुझे इसके डेटा प्राप्त हो रहा था।

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

इसलिए चयनकर्ता का रिफ्रेश ही एकमात्र ऐसी चीज थी जो मुझे याद आ रही थी।

मुझे पता चला कि attr का उपयोग करके आप कई विकल्पों के साथ समाप्त होंगे, जब आप नहीं चाहते थे – समाधान prop का उपयोग करना prop :

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

मुझे ऊपर दिए गए उदाहरणों के साथ समस्या थी, और समस्या यह थी कि मेरा चयन बॉक्स मान 6 वर्णों की निश्चित लंबाई स्ट्रिंग के साथ प्रीफ़िल्ल्ड हो गया है, लेकिन पारित होने वाला पैरामीटर लंबाई तय नहीं किया गया था।

मेरे पास एक आरपीएडी फ़ंक्शन है जो सही स्ट्रिंग पैड करेगा, निर्दिष्ट लंबाई के साथ, और निर्दिष्ट वर्ण के साथ। इसलिए, पैरामीटर को पैड करने के बाद यह काम करता है

 $('#wsWorkCenter').val(rpad(wsWorkCenter, 6, ' ')); function rpad(pStr, pLen, pPadStr) { if (pPadStr == '') {pPadStr == ' '}; while (pStr.length < pLen) pStr = pStr + pPadStr; return pStr; } 
  $('#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'); }); 

यहां बहुत आसान तरीका है plz इसका उपयोग करें

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

चयन बॉक्स के बच्चों को प्राप्त करें; उनके माध्यम से लूप; जब आप चाहते हैं एक मिल गया है, यह चयनित विकल्प के रूप में सेट; लूपिंग रोकने के लिए झूठी वापसी करें

यह स्वीकार्य जवाब सही नहीं है, जबकि .val ('newValue') फ़ंक्शन के लिए सही है, उसके नाम से एक चयन को पुनर्प्राप्त करने का प्रयास करते हुए मेरे लिए काम नहीं करता, मुझे अपने तत्व को प्राप्त करने के लिए आईडी और कक्षा नाम का उपयोग करना पड़ा

यहाँ एक आसान विकल्प है बस अपनी सूची का विकल्प सेट करें, तो चयनित पाठ के रूप में अपना टेक्स्ट सेट करें:

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