2011-01-09 53 views
1
<form> 
    <input type="text" id="inputbox" value="hello"/> 
    <input type="submit" value="Convert" onClick="convert(document.getElementById("inputbox"))"/> 
</form> 
<script type="text/javascript"> 
function convert (text) { 

    alert(text); 
    return text; 
</script> 

當我將警報更改爲document.write時,這也不起作用。我顯然有更多的HTML來配合這一點。爲什麼下面的Javascript /表單不工作?

謝謝!

回答

2

對我來說最明顯的是你嵌套雙引號。嘗試在那裏使用單引號。

onClick屬性也應該全部小寫。

我也認爲你設置它的方式可以改進。見下面...

<form id="my-form"> 
    <input type="text" id="inputbox" value="hello"/> 
    <input type="submit" value="Convert" /> 
</form> 

<script type="text/javascript"> 

document.getElementById('my-form').onsubmit = function() { 
    document.getElementById('my-form').value = 'whatever'; 
} 


</script> 

你也沒有關閉function與其結束大括號。

4

在瀏覽器中檢查JavaScript錯誤控制檯是個好主意。我看到兩個錯誤:convert沒有其結尾大括號,並且您的雙引號嵌套。

+2

答對了!所有瀏覽器都有錯誤控制檯。 FF在頂部菜單>工具>錯誤控制檯上有一個。它通常會告訴你什麼是錯的,以及它在哪一行。如果你想深入一點,試試一個名爲Firebug的插件來調試你的js。 – 2011-01-09 05:50:15

0
  1. 報價
  2. 您需要的文本中的文本,而不是框本身

    的onClick = 「轉化(的document.getElementById( '輸入框')。值)」

+0

而且,在Hippo中,轉換函數中缺失的大括號在他的回答中 – 2011-01-09 05:49:32

相關問題