2012-06-30 30 views
0

我試圖在文本框之間移動文本,但失敗。 這種方法有什麼問題。使用javascript移動或存儲文本

<html> 
<script> 
function fill(){ 
document.getElementById("text2").value = document.test.text1.value 
} 
</script> 

<form name="test" id="test"> 
<input type="text" name="text1" id="text1"/> 
<input type="text" name="text2" id="text2" value=""/> 
<button name="b" onclick="fill()">move</button> 
</form> 
</html> 
+1

你爲什麼以不同的方式訪問不同的文本框?另外 - 什麼JavaScript錯誤控制檯說? – Oded

+0

您是否認爲這會導致問題,我想要的是在將某些文本發送到數據庫之前在其中存儲一些文本。我沒有使用控制檯,也不熟悉它,請你解釋一下嗎?謝謝 – solidfox

+1

它可能是。首先要保持一致。然後檢查您從瀏覽器獲得的錯誤。 – Oded

回答

1

原因之一是按鈕提交表單。這需要被壓制。此外,避免內聯(又名DOM零)事件聲明和事件更正式綁定:我使用的幾個現代方法在那裏,所以你可能需要,如果你需要支持舊的IE來調整它

function fill(evt){ 
    document.getElementById("text2").value = document.test.text1.value; 
    evt.preventDefault(); 
} 
document.addEventListener('DOMContentLoaded', function() { 
    document.querySelector('#test button').addEventListener('click', fill, false); 
}, false); 

,但你明白了。請注意,如果填充函數僅用於此按鈕而不是其他地方,而不是像我這樣在名稱中定義它並引用它,則可以直接在事件綁定中將其作爲匿名函數引用。查找「匿名函數」以獲取更多信息。

+0

非常感謝你,它的工作原理。 – solidfox

相關問題