javascript - जावास्क्रिप्ट का उपयोग कर इनपुट तत्व में अक्षम विशेषता जोड़ें




jquery input (4)

मेरे पास एक इनपुट बॉक्स है और मैं इसे अक्षम करना चाहता हूं और साथ ही साथ मेरे फॉर्म को पोर्ट करते समय समस्याओं से बचने के लिए इसे छुपाएं।

अब तक मेरे इनपुट को छिपाने के लिए मेरे पास निम्न कोड है:

$(".shownextrow").click(function() { 
    $(this).closest("tr").next().show().find('.longboxsmall').hide();
});

यह वह इनपुट है जो परिणामस्वरूप छिप जाता है:

<input class="longboxsmall" type="text" />

मैं इनपुट में अक्षम विशेषता को कैसे जोड़ सकता हूं?

https://code.i-harness.com


आप डीओएम तत्व प्राप्त कर सकते हैं, और अक्षम संपत्ति को सीधे सेट कर सकते हैं।

$(".shownextrow").click(function() { 
  $(this).closest("tr").next().show()
          .find('.longboxsmall').hide()[0].disabled = 'disabled';
});

या यदि एक से अधिक हैं, तो आप उनमें से सभी को सेट करने के लिए each() का उपयोग कर सकते हैं:

$(".shownextrow").click(function() { 
  $(this).closest("tr").next().show()
          .find('.longboxsmall').each(function() {
               this.style.display = 'none';
               this.disabled = 'disabled';
          });
});

बस jQuery की attr() विधि का उपयोग करें

$(this).closest("tr").next().show().find('.longboxsmall').attr('disabled', 'disabled');

यदि आप jQuery का उपयोग कर रहे हैं तो अक्षम विशेषता सेट करने के कुछ अलग तरीके हैं।

var $element = $(...);
    $element.prop('disabled', true);
    $element.attr('disabled', true); 

    // The following do not require jQuery
    $element.get(0).disabled = true;
    $element.get(0).setAttribute('disabled', true);
    $element[0].disabled = true;
    $element[0].setAttribute('disabled', true);

$("input").attr("disabled", true); के रूप में ... मैं और नहीं जानता।

यह दिसंबर 2013 है और मुझे सच में नहीं पता कि आपको क्या कहना है।

सबसे पहले यह हमेशा .attr() , तो यह हमेशा था .prop() , इसलिए मैं यहां वापस आया जवाब का अद्यतन किया और इसे और अधिक सटीक बना दिया।

फिर एक साल बाद jQuery ने फिर से अपने दिमाग बदल दिए और मैं इसका ट्रैक भी नहीं रखना चाहता।

लंबी कहानी छोटी, अभी के रूप में, यह सबसे अच्छा जवाब है: "आप दोनों का उपयोग कर सकते हैं ... लेकिन यह निर्भर करता है।"

आपको इसके बजाय इस उत्तर को पढ़ना चाहिए: https://.com/a/5876747/257493

और उस परिवर्तन के लिए उनके रिलीज नोट्स यहां शामिल हैं:

न तो .attr () न ही .prop () मान को प्राप्त करने / सेट करने के लिए उपयोग किया जाना चाहिए। इसके बजाय .val () विधि का उपयोग करें (हालांकि .attr ("value", "somevalue") का उपयोग करना जारी रहेगा, क्योंकि यह 1.6 से पहले था)।

पसंदीदा उपयोग का सारांश

.prop () विधि को बूलियन विशेषताओं / गुणों और उन गुणों के लिए उपयोग किया जाना चाहिए जो HTML (जैसे window.location) में मौजूद नहीं हैं। अन्य सभी विशेषताओं (जिन्हें आप HTML में देख सकते हैं) .attr () विधि के साथ छेड़छाड़ कर सकते हैं और जारी रखना चाहिए।

या दूसरे शब्दों में:

".prop = गैर-दस्तावेज़ सामग्री"

".attr" = दस्तावेज़ सामान

...

क्या हम सभी एपीआई स्थिरता के बारे में एक सबक सीख सकते हैं ...






onclick