2011-10-14 22 views
56

में एक जावास्क्रिप्ट परिवर्तनीय मान पास करें मैं पहले से ही HTML दस्तावेज़ में एक छिपे हुए फ़ील्ड में दो पूर्णांक संख्याओं के उत्पाद का मान असाइन करना चाहता हूं। मैं जावास्क्रिप्ट चर के मान को प्राप्त करने के बारे में सोच रहा था और फिर उसे छिपे इनपुट इनपुट पर पास कर रहा था। मैं समझाने के लिए एक कठिन समय हो रही है, लेकिन यह है कि यह कैसे काम करना चाहिए है:इनपुट प्रकार छुपा मूल्य

स्क्रिप्ट उदाहरण

<script type="text/javascript"> 
function product(a,b){ 
     return a*b; 
} 
</script> 

ऊपर उत्पाद की गणना करता है और मैं चाहता हूँ उत्पाद छिपा क्षेत्र में किया जाना है।

<input type="hidden" value="[return value from product function]"> 

यह कैसे संभव है?

उत्तर

101

आप कर सकते थे अपने छिपे क्षेत्र एक आईडी दे:

<input type="hidden" id="myField" value="" /> 

और फिर जब तुम अपने मूल्य प्रदान करना चाहते हैं:

document.getElementById('myField').value = product(2, 3); 

यह सुनिश्चित करें कि आप इस असाइनमेंट को प्रदर्शन कर रहे हैं के बाद डोम किया गया है सुनिश्चित करें पूरी तरह से लोड किया गया, उदाहरण के लिए window.load घटना में।

+0

मेरे लिए – Quincy

+0

haha ​​hw सवाल की तरह लग रहा है, और मैं अपने hw के बारे में भूल गया था। धन्यवाद दोस्त। – KaHeL

+3

सबसे अच्छा जवाब सबसे सरल जवाब है। – Julian

1

एक इनपुट

var multi = product(2,3); 
document.getElementById('id').value=multi; 
8

के लिए कुछ आईडी जोड़े यदि आपने कि छिपा इनपुट:

function product(a, b) { 
    return a * b; 
} 
function setInputValue(input_id, val) { 
    document.getElementById(input_id).setAttribute('value', val); 
} 

यदि नहीं, तो आप एक बना सकते हैं शरीर में जोड़ने और फिर सेट यह मूल्य है :

function addInput(val) { 
    var input = document.createElement('input'); 
    input.setAttribute('type', 'hidden'); 
    input.setAttribute('value', val); 
    document.body.appendChild(input); 
} 

और फिर आप (मामले के आधार पर) का उपयोग कर सकते हैं:

addInput(product(2, 3)); // if you want to create the input 
// or 
setInputValue('input_id', product(2, 3)); 
2

आप कर सकता है कि इस तरह:

<script type="text/javascript"> 
    function product(a,b) 
    { 
    return a*b; 
    } 
    document.getElementById('myvalue').value = product(a,b); 
</script> 

<input type="hidden" value="THE OUTPUT OF PRODUCT FUNCTION" id="myvalue"> 
1
<script type="text/javascript"> 
    function product(x,y) 
    { 
    return x*y; 
    } 
document.getElementById('myvalue').value = product(x,y); 
</script> 

<input type="hidden" value="THE OUTPUT OF PRODUCT FUNCTION" id="myvalue"> 
2

छिपे हुए फील्ड:

<input type="hidden" name="year" id="year"> 

स्क्रिप्ट:

<script type="text/javascript"> 
    var year = new Date(); 
    document.getElementById("year").value=(year.getFullYear()); 
</script> 
2

कुछ रोचक उदाहरण के लिए इस jQuery पेज देखें कैसे किया मूल्य विशेषता है, और साथ खेलने के लिए कैसे करने के लिए कॉल यह:

http://api.jquery.com/val/

अन्यथा - आप किसी भी तरह के एक इनपुट के लिए चर पारित करने में जावास्क्रिप्ट बजाय jQuery उपयोग करना चाहते हैं, के लिए निम्न का उपयोग एक घटना click(), submit() एट अल पर इनपुट का मान सेट:

किसी घटना पर

; असाइन करें या इनपुट का मान सेट:

$('#inputid').val($('#idB').text()); 

जहां:

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

<div id = "idB">This text will be passed to the input</div> 

इस तरह के दृष्टिकोण का उपयोग करना, यह सुनिश्चित कर लें एचटीएमएल इनपुट पहले से ही कोई मान निर्दिष्ट नहीं है, या एक विकलांग विशेषता , जाहिर है।

एचटीएमएल फॉर्मों से निपटने के दौरान .html() और .text() मतभेदों से सावधान रहें।

0
//prompts for input in javascript 
test=prompt("Enter a value?","some string"); 

//passes javascript to a hidden field. 
document.getElementById('myField').value = test; 

//prompts for input in javascript 
test2=prompt("Enter a value?","some string2"); 

//passes javascript to a hidden field 
document.getElementById('myField').value = test2; 

//prints output 
document.write("hello, "+test+test2; 

अब यह भ्रामक है, लेकिन यह काम करना चाहिए ...

+1

कृपया भविष्य में अपने उत्तरों में कम भ्रमित होने का प्रयास करें :) – Ortund

संबंधित मुद्दे