У меня есть этот простой экран входа в систему, где есть текстовое поле для имени и кнопка отправки. Сценарий jquery работает так:
$(document).ready(function() {
$('#btnLogin').click( function() { validate() });
$('#loginForm').submit( function() { validate() });
});
function validate() {
if ($('#txtLogin').val() != '') {
document.cookie = 'loginID=' + $('#txtLogin').val();
$('#lblError').hide();
document.location.href = 'mainmenu.aspx';
}
else {
$('#txtLogin').text('');
$('#lblError').show();
}
}
Это работает, когда я нажимаю кнопку, но когда я нажимаю ввод, он не переходит к mainmenu.aspx. Я следую за ним с помощью Chrome, и он выполняет перенаправление точно так же, как когда вы нажимаете кнопку, но он остается на той же странице. Я также поставил точку останова в функции Page_Load (C #) mainmenu.aspx, но она никогда не достигает ее.
РЕДАКТИРОВАТЬ :: Вот HTML
<form id="loginForm" runat="server">
<div>
<div class='theme login'>
<p>Login</p>
<input type='text' id='txtLogin' maxlength='17' />
<div><input type='button' id='btnLogin' class='button' value='Log In' /></div>
<div><span id='lblError' visible='false' text='*You must enter a valid username'></span></div>
</div>
</div>
</form>