2013-04-25 26 views
0

我在HTML表單上有一個文本框和輸入按鈕。我想簡單地捕獲用戶輸入文本並將其傳遞給Javascript函數,以在不刷新的情況下更改同一頁面上的設置。我嘗試的每件事都會刷新頁面並丟失設置。不需要提交輸入。當然,按鈕是沒有問題的,只是輸入鍵。我在這裏發現了很多很好的信息,但仍然沒有成功。 這裏是我的代碼非常簡單:捕獲頁面內的文本而不刷新輸入

<html> 
<head> 
<title>Test</title> 
</head> 
<body> 
<form id="codeform" > 
<input name= "CodeTextBox" type="text" id="keywords" MAXLENGTH="20" SIZE="20" onkeypress="handleEnter(this, event, this.form)" /> 
<INPUT NAME="CodeButton" VALUE="click button" TYPE=BUTTON onClick=PromocodeValid(this.form)> 
</FORM> 
<script> 
function PromocodeValid(form) 
{ 
    alert(form.CodeTextBox.value); 
} 
</script> 
<script> 
function handleEnter(inField, e, form) { 
var charCode; 
    if(e && e.which){ 
    charCode = e.which; 
    }else if(window.event){ 
    e = window.event; 
    charCode = e.keyCode; 
    } 
    if(charCode == 13) { 
    PromocodeValid(form) 
    return false; 
} 
} 
</script> 
</body> 
</html> 

回答

0

,如果你必須把你的文本輸入的表單裏面,你可以使用的onsubmit =「返回false;」

+0

謝謝@jambriz,但我已將它插入到我的表單中,結果相同。當在文本框內按下回車鍵時,頁面重新加載並且文本丟失。必須有一些非常基本的東西,我在這裏做錯了。 – user2321645 2013-04-29 14:21:56

+0

對不起,這確實有用!我沒有在表單本身中調用「返回false」,而是在表單之外的函數中調用「return false」。 – user2321645 2013-04-29 14:35:26