Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/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 使用knockout和ajax调用更新数据_Javascript_Json_Knockout.js - Fatal编程技术网

Javascript 使用knockout和ajax调用更新数据

Javascript 使用knockout和ajax调用更新数据,javascript,json,knockout.js,Javascript,Json,Knockout.js,我正在进行ajax调用以更新数据,如下所示: self.UpdateStatus = function () { $.ajax({ type: "POST", url: 'Test.aspx/UpdateStatus', data: ko.toJSON({ data: self.Goals }), contentType: "application/json; charset=utf-8", success

我正在进行ajax调用以更新数据,如下所示:

self.UpdateStatus = function () {
    $.ajax({
        type: "POST",
        url: 'Test.aspx/UpdateStatus',
         data: ko.toJSON({ data: self.Goals }),
        contentType: "application/json; charset=utf-8",
        success: function (result) {
            var resHTML = result.d;
            if (resHTML != "") {
                alert(result.d);
            }
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert(textStatus);
            alert(errorThrown);
        }
    });
    return true;
};
其中Task是我的可观察数组。这是我的Task数组:

function Goals(d) {
    this.GoalID = ko.observable(d.GoalID);
    this.Goal = ko.observable(d.Goal);
    this.Note = ko.observable(d.Note);
    this.Status = ko.observable(d.Status);
}
我的更新方法头如下所示

public static bool UpdateStatus(Goals[] goal)
//query to update status of a goal
        string sqlUpdateStatus = @"UPDATE M_USERGOAL_INFO 
                                        SET STATUS = true 
                                  WHERE PK_ID = " + **goal[].GoalID**;
这里的目标是我的类名。 但它向我显示错误(客户端):内部服务器错误 消息“:“无效的JSON原语: 我在这里感到困惑,是应该在这里传递数组还是传递变量(在我的例子中不止一个)。

您从哪里收到此消息的?在客户端还是服务器上?请提供任务数组的结构,有哪些对象?您的目标类中是否有statusVal属性?如果没有,您将有一个例外。理想情况下,json字符串应该包含与您的目标类的属性名同名的键。不要将json字符串化!生成的对象不是您认为的对象。此处代码更改为ko.JSON并传递目标数组。但如何知道哪个索引正在更新?