Thursday 15 January 2015

javascript - jquery .prop('disabled', true) not working -


मैं एक & lt; इनपुट प्रकार पर disabled = true | false टॉगल करने का प्रयास कर रहा / रही हूं; = "पाठ" & gt; , एक चेकबॉक्स का उपयोग करके मैं इनपुट के मूल्य प्राप्त करने में सक्षम हूं, लेकिन मैं अक्षम को इनपुट सेट नहीं कर सकता।

मेरी jquery / js code

  & lt; स्क्रिप्ट & gt; $ (फ़ंक्शन () ($ ('' तारीख '') तिथिपिकर (); $ ('बॉडी')। पर ('परिवर्तन', '। हाउसिंग', फ़ंक्शन () {if ($ (this) .val () == 'डॉर्मस') {$ (यह)। Parent ()। अगले ("। Dorms")। शो ();} और {$ (यह)। Parent ()। भाई बहन ("। Dorms")। ('$')। $ ('Body')। ('Change', '.single', function () {if ($ (this)। चेक) {$ ('# echo1')। Text ($ ( यह) .prev ("। Roommate")। Val ()); // यह $ $ (यह) .prev ("। Roommate")। Val (''); // इनपुट $ (यह नहीं खाली) .prev ("। Roommate")। अक्षम = सच; // अक्षम $ (यह) .prev ("। Roommate") पर सेट नहीं है। Prop ('disabled', true); // अक्षम $ ('$ Echo2')। पाठ ($ (यह) .prev ("। रूममेट")। प्रोप ('अक्षम')), हमेशा हमेशा झूठे कहते हैं} और {$ ('# echo1')। पाठ ($ ( यह) .prev ("। Roommate")। Val ()); // यह $ $ (यह) .prev ("। Roommate")। Disabled = false; // हमेशा $ $ ('# echo2') झूठा रहता है। पाठ ($ (यह) .prev ("। रूममेट")। प्रोप ('अक्षम')); // हमेशा झूठ कहता है}});}); & Lt; / स्क्रिप्ट & gt;   

मेरा html कोड

  & lt; div class = "registration_housing particpant_0" डेटा-सिंक = "0" & ​​gt; & Lt; div & gt; & Lt; label class = "particpant_0" & gt; & lt; / लेबल & gt; & Lt; / div & gt; & Lt; div & gt; & Lt; लेबल & gt; ऑफ कैम्पस (शामिल नहीं) & lt; / label & gt; & Lt; इनपुट प्रकार = "रेडियो" नाम = "आवास [0]" मान = "कोई नहीं" वर्ग = "आवास" / & gt; & Lt; / div & gt; & Lt; div & gt; & Lt; लेबल & gt; कैम्पस पर & lt; / लेबल & gt; & Lt; इनपुट प्रकार = "रेडियो" नाम = "आवास [0]" मान = "डॉर्म" वर्ग = "आवास" / & gt; & Lt; / div & gt; & Lt; div वर्ग = "डॉम्स" शैली = "प्रदर्शन: कोई नहीं;" & gt; & Lt; div & gt; & LT; लेबल & gt; चेकइन: & lt; / लेबल & gt; & Lt; इनपुट प्रकार = "टेक्स्ट" नाम = "चेक_इन [0]" वर्ग = "दिनांक" / & gt; & Lt; / div & gt; & Lt; div & gt; & LT; लेबल & gt; चेकआउट: & lt; / लेबल & gt; & Lt; इनपुट प्रकार = "टेक्स्ट" नाम = "चेक_आउट [0]" वर्ग = "दिनांक" / & gt; & Lt; / div & gt; & Lt; div & gt; & LT; लेबल & gt; रूममेट: & lt; / लेबल & gt; & Lt; इनपुट प्रकार = "टेक्स्ट" नाम = "रूममेट [0]" वर्ग = "रूममेट" / & gt; & Lt; इनपुट प्रकार = "चेकबॉक्स" नाम = "रूममेट_एसिंगले [0]" मान = "एकल" वर्ग = "एकल" /> gte- अधिभोग के लिए जांच & lt; / div & gt; & Lt; / div & gt; & Lt; div class = "line" & gt; & Lt; घंटा आकार = "1" / & gt; & Lt; / div & gt; & Lt; / div & gt; & Lt; div & gt; & Lt; label id = "echo1" & gt; & lt; / label & gt; & Lt; / div & gt; & Lt; div & gt; & Lt; label id = "echo2" & gt; & lt; / label & gt; & Lt; / div & gt;   

आप

पर यह देख सकते हैं कि मुझे ("। रूममेट") का मान क्यों मिल सकता है - यानी। $ (this) .prev ("। Roommate")। Val ()
लेकिन
$ (this) .prev ("। Roommate")। Disabled = true;
या $ (यह) .prev ("। रूममेट")। प्रोप ('अक्षम', सच है);
सेट नहीं करेगा ( ".roamate") अक्षम करने के लिए?

आपकी समस्या DOM तत्व विशेषताओं के साथ jquery मिश्रण है

यदि ($ (यह)। चेक किया गया है) { to यदि (this.checked) {

jquery के साथ आप

  $ (this) .is (': checked') // लेकिन आप ऐसा कर सकते हैं। चेक किया गया   

और <पूर्व> $ (यह) .prev ("। रूममेट")। प्रोप ('अक्षम', गलत); // या $ (यह) .prev ("। Roommate") [0] .disabled = false;

  $ (this) .prev ("roommate") के बजाय   

। Disabled = false;

इसलिए आपको शायद इसकी आवश्यकता है:

  $ ('body')। पर ('परिवर्तन', '। एकल ', फ़ंक्शन () {$ (यह) .prev ("। रूममेट")। प्रोप (' अक्षम ', this.checked) .val (' ');});    

No comments:

Post a Comment