我在编程COdeigniter
中使用PHP登录脚本。如果我在这个表单中输入正确的凭据,它会显示error
,而在输入正确的凭据后,如果我在新标签中打开相同的表单,它将自动打开。似乎,一些js问题。任何的想法 ?这是code
<form method="post" action="#" onsubmit="return validateLogin('loginForm')" name="loginForm">
<table width="100%" cellpadding=0 cellspacing=0>
<tr>
<td>
<b>
Username:
</b>
</td>
<td>
<input type="text" name="usr" />
</td>
</tr>
<tr>
<td>
<b>
Password:
</b>
</td>
<td>
<input type="password" name="pwd" />
</td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" value="Login" class="submit" />
</td>
</tr>
</table>
</form>
功能是
function validateLogin(form) {
user = document.forms[form].usr;
pwd = document.forms[form].pwd;
if(user.value.length==0)
{
notify('Please enter a valid username', 'error');
user.focus();
hilit('[name = user]');
return false;
}
else if(pwd.value.length==0)
{
notify('Please enter a valid password', 'error');
pwd.focus();
hilit('[name = pwd]');
return false;
}
else
{
notify('processing.... please wait', 'notice');
dataString = 'user='+user.value+'&pwd='+pwd.value;
jQuery.ajax({
type: "POST",
data: dataString,
url: baseurl+'admin/checkLogin',
cache: false,
error: function()
{
notify("An error occurd... please try later", 'error');
},
success: function(html)
{
if(html == 1)
{
window.location = baseurl+'admin/home';
}
else
{
notify('Your login details are incorrect!!!', 'error');
}
}
});
return false;
}
return false;
}
答案 0 :(得分:0)
您正在以错误的方式发送数据
发送到服务器的数据必须是键/值对。 {key : value}
在这样的ajax调用中修改你的数据
data : { user : user.value, pwd : pwd.value}
修改强>
使用此
更改错误处理代码error:function(xhr,err){
alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
alert("responseText: "+xhr.responseText);
}