表单按钮,ajax,输入密钥,表单提交

时间:2010-03-11 10:25:35

标签: ajax forms submit

我在页面上有以上内容,如果我点击按钮,我的ajax功能正常。但是,如果我按“输入”,表单提交但没有任何反应 - 毫无疑问,因为该功能被称为“onclick”

有没有办法改变这个,所以用户可以点击按钮,或按键盘上的Enter键,并将表格正确提交给ajax?

感谢


更新

    ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 4){
            var ajaxDisplay = document.getElementById('ajaxDiv');
            ajaxDisplay.innerHTML = ajaxRequest.responseText;
        }
    }
    var gold = document.getElementById('gold_amount').value;
    var carat = document.getElementById('carat').value;

    var queryString = "?gold=" + gold + "&carat=" + carat;
    ajaxRequest.open("GET", "script.php" + queryString, true);
    ajaxRequest.send(null); 

}

//-->

2 个答案:

答案 0 :(得分:3)

您的表单标记上有onsubmit事件。当提交表单时,它会被提升(当你按下回车键时也是如此)。

http://www.w3schools.com/jsref/event_form_onsubmit.asp

答案 1 :(得分:0)

Javascript有一个onKeydown方法,你可以捕获Enter键点击。

<body>
<form action="" method="POST" id="myForm">
<input type="text" name="myText" onKeyDown="changeVal()">

<script type="text/javascript" language="JavaScript">
s1 = new String(myForm.myText.value)

function changeVal() {
     s1 = "You pressed a key"
    myForm.myText.value = s1.toUpperCase() 
} 

</script>
</form>
</body>