在jquery中的getJson之后发布json数据

时间:2016-01-11 07:53:34

标签: javascript jquery post get

我有一个关于如何同时使用GET和POST的问题。 我想要做的是在保存表单之前,我想验证新用户名是否已经存在。

{ “status”: “success”, “results” : [ { “id” : 1, “name” : “John Smith”, “password”: “123456” }, { “id”: 2, “name” : “Jane Doe”, “password”: “654321” } ] }

我想编写代码以在保存表单之前验证用户名是否已存在。如果存在用户名,我想向浏览器显示警报。如果没有错误,我想提交表格。

这是我到目前为止所得到的!任何帮助将不胜感激!

$('form').submit(function(event) {
var username = $('#user_name').val();

$.getJSON('user.json', function(data) {

    var results = data.results;
    var match = false;

    $.each(results, function(i, result) {
        if(result.name === username) {
            match = true;
        }
    });

    if(!match) {
        console.log("POST");
        // Submit the form!


    } else {
        alert("Username already exists!");
    }

});

});

有更好的方法吗?即使不使用jQuery?使用jQuery的理由是什么?

1 个答案:

答案 0 :(得分:0)

检查以下代码以json格式发送一些数据。

if(!match) {
        console.log("POST");

    $.ajax({
        cache: false,
        url : ?,
        type: "POST",
        dataType : "json",
        data : JSON.stringify(data),
        context : Form,
        success : function(callback){
            //Where $(this) => context == FORM
            console.log(JSON.parse(callback));
            $(this).html("Success!");
        },
        error : function(){
            $(this).html("Error!");
        }
    });
}

删除数据:JSON.stringify(数据),因为你不需要。