Jquery के साथ छिपे इनपुट का मान सेट करें


92

मैं jQuery का उपयोग करके नीचे छिपे हुए क्षेत्र का मान सेट करने का प्रयास कर रहा हूं।

<input type="hidden" value="" name="testing" />

मैं इस कोड का उपयोग कर रहा हूं:

var test = $("input[name=testing]:hidden");
test.value = 'work!';

लेकिन इसका काम नहीं हो रहा है। मेरे कोड में क्या गलत है?


4
पूर्ण स्पष्टता के लिए, jQuery डोम तत्वों का एक संग्रह लौटाता है। परीक्षण DOM तत्व नहीं बन जाता है यह एक सरणी बन जाता है। सादे ओल 'जावास्क्रिप्ट का उपयोग करने के लिए, एक से अधिक होने पर आप संग्रह पर परीक्षण [0] .value या लूप कर सकते हैं। अन्यथा, test.val ('काम!') आपके लिए काम करेगा क्योंकि यह test.value के बजाय jQuery विधि है जो DOM तत्व ऑब्जेक्ट का गुण है।
स्कॉटक्स

जवाबों:


128

आपको valइसके बजाय उपयोग करना चाहिए value

<script type="text/javascript" language="javascript">
$(document).ready(function () { 
    $('input[name="testing"]').val('Work!');
});
</script>

33

यह मेरे लिए काम किया:

$('input[name="sort_order"]').attr('value','XXX');

28
$('input[name="testing"]').val(theValue);

1
अजीब बात है, इसका मतलब है कि यह करना है
Haim Evgi

"टाइप = 'हिडन' के बजाय" टाइप = 'हिडन' के कारण कोई समस्या नहीं है? मिश्रित मामले की विशेषताओं के बारे में निश्चित नहीं है। तिनके पर
झनझनाहट

1
मुझे लगता है कि समस्या यहाँ चयनकर्ता है .. मुझे लगता है कि यह होना चाहिए input[name="testing"-> उद्धरण के बीच परीक्षण ... जब भी कुछ मान सेट करने से काम नहीं होता है, तो पहले तत्व प्राप्त करने का प्रयास करें .. यदि आप इसे प्राप्त नहीं करते हैं, तो समस्या .val () के साथ नहीं है, लेकिन शायद चयनकर्ता के साथ
थॉमस मुल्डर


7

मान लें कि आपके पास XXX नाम का एक छिपा हुआ इनपुट है, यदि आप निम्नलिखित के लिए एक मान निर्दिष्ट करना चाहते हैं

<script type="text/javascript">

    $(document).ready(function(){
    $('#XXX').val('any value');
    })
</script>

FYI करें, कोड-केवल उत्तर आमतौर पर निम्न-गुणवत्ता के रूप में चिह्नित किए जाते हैं और आमतौर पर हटाए जाएंगे। अपने उत्तर के साथ कुछ संदर्भ / स्पष्टीकरण पोस्ट करने का प्रयास करें यदि आप इसे चारों ओर चिपकाना चाहते हैं और (संभवतः) उत्थान प्राप्त कर सकते हैं।
sgress454

चयनकर्ता जो आप उपयोग कर रहे हैं ( #XXX) idविशेषता के लिए है। यदि आप एक इनपुट XXX को "नाम" देते हैं, तो चयनकर्ता होगा input[name="XXX"]
क्रुमेंस

4

इसे jquery के साथ बनाने के लिए, इस तरह बनाएं:

var test = $("input[name=testing]:hidden");
test.val('work!');

या

var test = $("input[name=testing]:hidden").val('work!');

इस फिडल में काम करते हुए देखें ।


0

आपको नाम सेट करने की आवश्यकता नहीं है, बस एक आईडी देना पर्याप्त है।

<input type="hidden" id="testId" />

और jquery से आप नीचे की तरह 'वैल' () विधि का उपयोग कर सकते हैं :

 $('#testId').val("work");
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.