जवाबों:
पुराने संस्करणों में आप उपयोग कर सकते हैं attr
। 1.6 jQuery के रूप में आप prop
इसके बजाय का उपयोग करना चाहिए :
$("#target :input").prop("disabled", true);
'लक्ष्य' के अंदर सभी फॉर्म एलिमेंट्स को डिसेबल करने के लिए। देखें :input
:
सभी इनपुट, टेक्सारिया, सिलेक्ट और बटन तत्वों से मेल खाता है।
यदि आप केवल <input>
तत्व चाहते हैं:
$("#target input").prop("disabled", true);
$(this).closest('form').find('input').prop('disabled', true);
। यकीन नहीं होता कि आप इसे बेहतर तरीके से समेकित कर सकते हैं, मैं अभी भी नहीं बल्कि jQuery में noobish हूँ।
ऊपर का उदाहरण तकनीकी रूप से गलत है। नवीनतम jQuery के अनुसार, prop()
विधि का उपयोग विकलांगों जैसी चीजों के लिए किया जाना चाहिए। उनके एपीआई पृष्ठ देखें।
'लक्ष्य' के अंदर सभी फॉर्म एलिमेंट्स को डिसेबल करने के लिए: इनपुट सेलेक्टर का उपयोग करें जो सभी इनपुट, टेक्सारिया, सिलेक्ट और बटन एलिमेंट्स से मेल खाता हो।
$("#target :input").prop("disabled", true);
यदि आप केवल तत्व चाहते हैं, तो इसका उपयोग करें।
$("#target input").prop("disabled", true);
इसके अलावा अधिक संक्षिप्त तरीका उनके चयनकर्ता इंजन का उपयोग करना है। तो एक डिव या पैरेंट के सभी फॉर्म एलिमेंट को डिसेबल करने के लिए।
$myForm.find(':input:not(:disabled)').prop('disabled',true)
आप जोड़ सकते हो
<fieldset class="fieldset">
और फिर आप कॉल कर सकते हैं
$('.fieldset').prop('disabled', true);
सभी फ़ॉर्म को अक्षम करने के लिए, जितना आसान हो उतना लिखें:
jQuery 1.6+
$("#form :input").prop("disabled", true);
jQuery 1.5 और नीचे
$("#form :input").attr('disabled','disabled');
इस एक पंक्ति के साथ आप किसी भी इनपुट फ़ील्ड को एक फ़ॉर्म में अक्षम कर सकते हैं
$('form *').prop('disabled', true);
निश्चित उत्तर (संस्करण 1.6 पर jQuery के एपीआई में परिवर्तन को कवर) गर्नफ द्वारा दिया गया है
$("#target :input").prop("disabled", true);