Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ajax PUT方法未命中服务器_Javascript_Jquery_Html_Ajax - Fatal编程技术网

Javascript Ajax PUT方法未命中服务器

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

我有一个登录表单,我正在尝试使用PUT方法登录,以存储登录的用户名。但出于某种原因,它没有击中服务器,也没有登录。你能帮忙吗

我想把它转到登录页面,但没有这样做。请帮忙

以下是相同的代码:

HTML:


请登录

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> &nbsp; ' + 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