दिलचस्प पोस्ट
Msiexec का उपयोग किए बिना कमांड लाइन से एक MSI फ़ाइल को अनइंस्टॉल करना पायथन स्रोत में यूटीएफ -8 एन्कोडिंग के साथ काम करना 64-बिट विंडोज पर सेट अप टूल्स स्थापित करना SQL डेटाबेस तालिका में nth पंक्ति का चयन कैसे करें? जावा 8: दो स्थानीय डेटटाइम के बीच अंतर की गणना करें PYTHONPATH का उपयोग कैसे करें मॉलोक / फ्री / नए / डिलीट पर कब और क्यों 0xCD, 0xDD, आदि में ओएस आरंभीकरण मेमोरी होगी? सीडीएटीए एचटीएमएल में क्या है? अतिव्यापी घटनाओं के साथ स्ट्रिंग गणना NSDictionary ऑब्जेक्ट के एक NSArray सॉर्ट करने का सबसे अच्छा तरीका? log4j: एक विशेष श्रेणी के विशिष्ट एपेन्डर के लॉग आउट आउटपुट रेमंड को अलग करने के लिए ऊंट कैस या टाईटलसीज (उन्नत) सी # .NET 3.5 में प्रगति पट्टी का रंग कैसे बदल सकता है? वेबकिट में अनपेक्षित टोकन अवैध वास्तविक सूची ऑब्जेक्ट में एक स्ट्रिंग का प्रतिनिधित्व करने वाली सूची को परिवर्तित करना

क्रोम में चयनित विकल्प तत्व पर ईवेंट पर क्लिक करें

मुझे Chrome में निम्नलिखित के साथ एक समस्या आ रही है:

 var items = $("option", obj); items.each(function(){ $(this).click(function(){ // alert("test"); process($(this).html()); return false; }); }); 

click ईवेंट Chrome में प्रतीत नहीं होता है, लेकिन Firefox में काम करता है।

मैं एक कॉम्बो से एक option तत्व पर click करने में सक्षम होना चाहता हूं, अगर मैं इसके बजाय किसी अन्य प्रकार का तत्व करता हूं, तो कहें <li> यह ठीक काम करता है। कोई विचार? धन्यवाद।

वेब के समाधान से एकत्रित समाधान "क्रोम में चयनित विकल्प तत्व पर ईवेंट पर क्लिक करें"

मुझे विश्वास नहीं है कि विकल्प पर क्लिक ईवेंट मान्य है। यह चयनित तत्वों पर मान्य है, हालांकि। इसे एक प्रयास करें:

 $("select#yourSelect").change(function(){ process($(this).children(":selected").html()); }); 

<select> साथ सीधे कॉल करने की घटना के बावजूद हम इस अन्य तरीके को प्राप्त कर सकते हैं

जे एस भाग:

 $("#sort").change(function(){ alert('Selected value: ' + $(this).val()); }); 

HTML भाग:

 <select id="sort"> <option value="1">View All</option> <option value="2">Ready for Review</option> <option value="3">Registration Date</option> <option value="4">Last Modified</option> <option value="5">Ranking</option> <option value="6">Reviewed</option> </select> 

मैंने पाया कि निम्नलिखित मेरे लिए काम किया है – इसके बजाय क्लिक पर उपयोग करने पर, परिवर्तन पर उपयोग करें जैसे:

  jQuery('#element select').on('change', (function() { //your code here })); 

मुझे समान समस्या थी change ईवेंट मेरे लिए अच्छा नहीं था क्योंकि जब उपयोगकर्ता option पर क्लिक करता है तो मुझे कुछ डेटा ताज़ा करने की आवश्यकता होती है I कुछ परीक्षणों के बाद मुझे यह समाधान मिला है:

 $('select').on('click',function(ev){ if(ev.offsetY < 0){ //user click on option }else{ //dropdown is shown } }); 

मैं मानता हूं कि यह बहुत बदसूरत है और आपको change घटना के साथ रहना चाहिए जहां आप कर सकते हैं, लेकिन इसने मेरी समस्या का समाधान किया

चयन को बदलने का आसान तरीका है, और इसे अपडेट करना यह है।

 // BY id $('#select_element_selector').val('value').change(); 

एक और उदाहरण:

 //By tag $('[name=selectxD]').val('value').change(); 

एक और उदाहरण:

 $("#select_element_selector").val('value').trigger('chosen:updated'); 
 <select id="myselect"> <option value="0">sometext</option> <option value="2">Ready for Review</option> <option value="3">Registration Date</option> </select> $('#myselect').change(function() { if($('#myselect option:selected').val() == 0) { ... } else { ... } }); 

आमतौर पर मेरे लिए क्या काम करता है, पहले ड्रॉपडाउन के मूल्य को बदलना है, उदा

$('#selectorForOption').attr('selected','selected')

और फिर एक बदलाव ट्रिगर

$('#selectorForOption').changed()

इस तरह, किसी भी जावास्क्रिप्ट को वायर्ड है

हो सकता है कि नए jquery संस्करणों में से एक विकल्पों पर क्लिक ईवेंट का समर्थन करता है। यह मेरे लिए काम किया:

 $(document).on("click","select option",function() { console.log("nice to meet you, console ;-)"); }); 

अद्यतन: एक संभावित उपयोग के लिए निम्न हो सकता है: एक उपयोगकर्ता एक HTML फार्म भेजता है और मान एक डेटाबेस में डाला जाता है। हालांकि एक या अधिक मान डिफ़ॉल्ट रूप से सेट होते हैं और आप इस स्वचालित प्रविष्टियों को ध्वजांकित करते हैं। आप उपयोगकर्ता को भी दिखाते हैं कि उसकी प्रविष्टि स्वत: उत्पन्न होती है, लेकिन अगर वह पहले से चयनित विकल्प पर क्लिक करके प्रविष्टि की पुष्टि करती है तो आप डेटाबेस में ध्वज बदलते हैं। एक दुर्लभ मुकदमा मामला है, लेकिन संभव है …

मुझे पता है कि यह कोड स्निपेट एक विकल्प क्लिक को पहचानने के लिए काम करता है (कम से कम क्रोम और एफएफ) में। इसके अलावा, यह काम करता है अगर तत्व डोम लोड पर नहीं था। मैं आमतौर पर इसका उपयोग तब करता हूं जब मैं एक चयन तत्व में इनपुट के इनपुट अनुभाग और मैं अनुभाग शीर्षक क्लिक नहीं करना चाहता।

 $(document).on('click', 'option[value="disableme"]', function(){ $('option[value="disableme"]').prop("selected", false); }); 

चूंकि $(this) ईएस 6 एरो फ़ंक्शन के साथ सही नहीं है, जो कि function() {} के समान नहीं है, आपको $ (यह) का उपयोग नहीं करना चाहिए, अगर आप ईएस 6 सिंटैक्स का उपयोग करते हैं
आधिकारिक jQuery के एन्वेडर के मुताबिक, यह करने के लिए एक आसान तरीका है कि शीर्ष उत्तर क्या कहते हैं।
किसी चयनित विकल्प का html पाने का सबसे अच्छा तरीका उपयोग करना है

 $('#yourSelect option:selected').html(); 

आप html() को text() या किसी अन्य चीज़ से बदल सकते हैं (लेकिन मूल प्रश्न में html() था)।
सिर्फ jQuery के लघुकथा विधि change() साथ, ईवेंट श्रोता change जोड़ने के लिए, जब आपके विकल्प को बदलते हैं तो कोड को ट्रिगर करने के लिए।

  $ ('#yourSelect' ).change(() => { process($('#yourSelect option:selected').html()); }); 

यदि आप केवल option:selected के मूल्य जानना चाहते हैं option:selected (विकल्प जो उपयोगकर्ता ने चुना है) आप $('#yourSelect').val() उपयोग कर सकते हैं $('#yourSelect').val()

युक्ति:

$('#select_id').on('change', (function() { $(this).children(':selected').trigger('click'); }));