2012-03-15 40 views
1

取值在1文本框,並希望在第2顯示它..沒有從UI改變文本框的值,並不能顯示

1st <input type="text" value=" " id = "marks1" name = "marks1" onblur = "myFunction('marks1')"  /> 
2nd <input type="text" value=" " id = "marks2" name = "marks1" disabled = "disabled" /> 

和oblur我打電話的功能。每當我更改UI的值時,在函數調用時,我會得到舊值,即「'而不是更改值。 在變量「值」我得到的舊值,我無法顯示它在第二個文本框。

function myFunction(txtname) 
{ 
    alert("call"); 
    var txtobj = document.getElementsByName(txtname); 
    var value = txtobj[0].value; 
    alert("my value : "+value); 
    txtobj[1].value = value; 
} 

我知道代碼沒問題,但它不適用於我。有沒有其他方法?

+0

'name'和'id'共享相同的命名空間。如果他們都用於元素,他們應該是相同的。你正在使用'name',其中'class'會更合適。 – thomthom 2012-03-15 14:20:56

+0

您已經發布了同樣問題的問題! [不改變從UI的文本框值](http://stackoverflow.com/questions/9718748/not-changing-textbox-value-from-ui) – epascarello 2012-03-15 14:22:53

回答

0

工作對我來說:

function myFunction(element) 
{ 
    var txtobj = document.getElementsByName(element); 
    var value = txtobj[0].value; 
    txtobj[1].value = value; 
}​ 

http://jsfiddle.net/pwTwB/1/

你得到一個錯誤?

0

下面是設置下一個文本框的值的簡單方法。

function moveText(ele){ 

    document.getElementById("marks2").value = ele.value; 

} 

然後用你的HTML標記以下

<input type="text" id="marks1" onblur="moveText(this)" /> 
<input type="text" id="marks2" disabled="disabled" /> 
0

試試這樣說:

function myFunction(txtname) 
{ 
    var txtobj = document.getElementById(txtname); 
    var target = document.getElementById("marks2"); 
    target.value = txtobj.value; 
} 
相關問題