2010-06-06 12 views
30

मैं jQuery का उपयोग कर बटन क्लिक ईवेंट पर ड्रॉपडाउनलिस्ट मानों को कैसे साफ़ करूं?मैं jQuery का उपयोग कर बटन क्लिक ईवेंट पर ड्रॉपडाउनलिस्ट मानों को कैसे साफ़ करूं?

+0

आप उन्हें डिफ़ॉल्ट (ऊपर) मूल्य पर रीसेट करना चाहते हैं? –

उत्तर

31

पहला समाधान रस कैम द्वारा दिए गए के लिए एक छोटा विकल्प होगा:

$('#mySelect').val(''); 

इसका मतलब यह है कि आप सूची बनाए रखने के लिए चाहते हैं, लेकिन इसे बनाने के ताकि कोई विकल्प नहीं चुना जा सके।

यदि आप कोई विशेष डिफ़ॉल्ट मान चुनना चाहते हैं, तो बस खाली स्ट्रिंग के बजाय उस मान को पास करें।

$('#mySelect').val('someDefaultValue'); 

या विकल्प के सूचकांक से यह करने के लिए, तुम कर सकते हो:

$('#mySelect option:eq(0)').attr('selected','selected'); // Select first option 
+1

यह सही नहीं है। वह सभी विकल्पों को साफ़ करना चाहता है। वैल (''); ऐसा नहीं करता है, यह simpyl चयन को साफ़ करता है। आपको इसके बजाय .empty() का उपयोग करना चाहिए – nights

44
$('#dropdownid').empty(); 

जो ड्रॉपडाउन तत्व के नीचे सभी <option> तत्वों को हटा देगा।

यदि आप चयनित आइटमों को अचयनित करना चाहते हैं, तो Russ से कोड के साथ जाएं।

+0

ड्रॉपडाउन को खाली करने के बाद मैं सभी विकल्पों को वापस कैसे प्राप्त कर सकता हूं, ध्यान दें कि ड्रॉपडाउन डेटाबेस से पॉप्युलेट किया जा रहा है? –

+1

@Piyush: यदि आप एक ही विकल्प को पुनर्स्थापित करना चाहते हैं, तो आप उन्हें केवल कैश कर सकते हैं। जैसे, 'var $ opts = $ (' विकल्प का चयन करें ')। Detach();' और फिर आप उन्हें बाद में '$ opts.appendTo (' # selectID ') के साथ फिर से सम्मिलित कर सकते हैं; ' – jAndy

+0

मुझे लगता है कि यह कैसे साफ़ करता है , लेकिन मेरे मामले में चयन विकल्प किसी अन्य ड्रॉपडाउन के चयन के आधार पर डेटाबेस से पॉप्युलेट किए गए थे। तो, मैं डिफ़ॉल्ट टेक्स्ट कैसे डाल सकता हूं, क्योंकि डिफ़ॉल्ट टेक्स्ट प्री-एजेक्सिंग से वहां था ताकि स्रोत बोल सके लेकिन AJAX नहीं करता है। बस '$ (' # blarg ') डालें। वैल (' डिफ़ॉल्ट टेक्स्ट ');' मेरे लिए काम नहीं किया। –

15

आपके द्वारा चयनित विकल्पों

$('select option:selected').removeAttr('selected'); 

आप वास्तव में को विकल्पों को निकाल (हालांकि मुझे नहीं लगता कि आप इस मतलब है) चाहते हैं रीसेट करना चाहते हैं।

$('select').empty(); 

अपने मामले में सबसे उपयुक्त चयनकर्ता के लिए विकल्प select (इस आईडी से या CSS वर्ग से हो सकता है)। का उपयोग करते हुए उसी रूप में पृष्ठ पर सभी <select> तत्वों को रीसेट कर देगा

0

आप jQuery का उपयोग कर बटन क्लिक के साथ बूटस्ट्रैप पेज रीसेट करना चाहते हैं:

function resetForm(){ 
     var validator = $("#form_ID").validate(); 
     validator.resetForm(); 
} 

का उपयोग करना कोड के ऊपर आपने फ़ील्ड रंग को लाल से सामान्य में बदल दिया है।

आप तो केवल मैदान में उतारा मूल्य रीसेट करना चाहते हैं:

$("#form_ID")[0].reset();