[英]Enter key hook with html form
我用HTML實現表單:
<form id="loginForm" action="/?do=login" method="post" >
<table width="50%" border="0">
<tr>
<td colspan="2">
<span id="LoginErr"></span>
<div>Login:</div>
<input id="Login" type="text" maxlength="32" name="Login" value="{VAR %LOGIN}"/>
</td>
</tr>
<tr>
<td valign="bottom">
<span id="PasswordErr"></span>
<div>Passoword:</small></div>
<input id="Password" type="password" maxlength="128" name="Password" value=""/>
</td>
</tr>
<tr>
<td>
<a href="javascript:checkLogin()">Enter</a>
</td>
</tr>
</table>
</form>
這是檢查和發布功能(使用jQuery):
function checkLogin()
{
var focused = false;
function report_error(field, err)
{
$('#' + field + 'Err').html(err);
if (!focused)
{
$('#' + field).focus();
focused = true;
}
}
$('#LoginErr').html('');
$('#PasswordErr').html('');
$login = jQuery.trim($('#Login').val());
$password = jQuery.trim($('#Password').val());
if ($login.length == 0)
report_error('Login', 'The login field is empty!');
if ($password.length == 0)
report_error('Password', 'The password field is empty!');
if (!focused)
$('#loginForm').submit();
}
但是我在輸入密鑰時遇到麻煩。 當我按此鍵表單時,我沒有進行JavaScript檢查。 我需要在按下Enter鍵且沒有更多操作時調用我的函數。
謝謝!
更新:正確的代碼是:在表單標簽中需要添加: onSubmit="return checkLogin()
in javascript if (!focused) $('#loginForm').submit();
return !focused;
需要更改return !focused;
感謝rdamborsky。
使用onSubmit
表單事件:
$(function() {
$('#loginForm').onSubmit = checkLogin;
});
在觸發提交事件的任何形式的表單數據實際發送之前,它將被調用(單擊按鈕,在字段之一內按Enter ...)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.