Javascript Ajax PUT方法未命中服务器
我有一个登录表单,我正在尝试使用PUT方法登录,以存储登录的用户名。但出于某种原因,它没有击中服务器,也没有登录。你能帮忙吗 我想把它转到登录页面,但没有这样做。请帮忙 以下是相同的代码: HTML:Javascript Ajax PUT方法未命中服务器,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我有一个登录表单,我正在尝试使用PUT方法登录,以存储登录的用户名。但出于某种原因,它没有击中服务器,也没有登录。你能帮忙吗 我想把它转到登录页面,但没有这样做。请帮忙 以下是相同的代码: HTML: 请登录 jQuery: $("#login-user").validate({ submitHandler: userLogin }); function userLogin() { var username = $('#user').val(); var pas
请登录
jQuery:
$("#login-user").validate({
submitHandler: userLogin
});
function userLogin() {
var username = $('#user').val();
var password = $('#pass').val();
var data = $("#login-user").serialize();
var userUrl = 'http://website.com/DatabaseName/Tablename/' + username + '/login?' + password + '';
console.log(data);
$.ajax({
url: userUrl,
type: 'PUT',
data: data,
success: function(data) {
if (data == 0) {
window.location.href = "http://website.com/page2.html";
} else if (data == -1) {
("#error").html('<span class="error">Incorrect username or password</span>');
} else {
$("#error").fadeIn(1000, function() {
$("#error").html('<div class="alert alert-danger"><span class="glyphicon glyphicon-info-sign"></span> ' + data + ' !</div>');
});
}
}
});
}
$(“#登录用户”)。验证({
submitHandler:userLogin
});
函数userLogin(){
var username=$('#user').val();
var password=$('#pass').val();
var data=$(“#登录用户”).serialize();
var userUrl='1〕http://website.com/DatabaseName/Tablename/“+用户名+”/登录?“+密码+”;
控制台日志(数据);
$.ajax({
url:userUrl,
键入:“PUT”,
数据:数据,
成功:功能(数据){
如果(数据==0){
window.location.href=”http://website.com/page2.html";
}else if(数据==-1){
(“#error”).html(“不正确的用户名或密码”);
}否则{
$(“#错误”).fadeIn(1000,函数(){
$(“#错误”).html(“+data+”!”);
});
}
}
});
}
如果不希望表单向laod提交新页面(或者如果表单中未定义操作,则重新发布当前页面),请对传递给事件处理程序的事件使用preventDefault()方法
function userLogin(e) {
e.preventDefault();
... rest of your code
我想
submitHandler: userLogin
在“验证对象将传递给事件对象”对话框中,您是否已在浏览器开发人员工具控制台选项卡中确认没有发送网络请求或没有收到来自服务器的响应?您的
$.ajax
没有错误处理程序,因此请添加一个,以查看错误是什么(如果请求中存在错误)。另一个问题是,提交表单时,将加载一个新页面。在这种情况下,由于表单中没有action
属性,当前页面将被重新加载,可能在ajax开始执行任何操作之前。您需要防止submit
的默认行为来阻止这种情况的发生——因为您正在使用jQuery,我不知道最好的方法that@JaromandaX谢谢你的评论。我正在尝试解决它,但没有运气。关键字是event
和preventDefault
submitHandler: userLogin