Javascript 如何使用KnockoutJS将数据保存到SQL数据库中?

Javascript 如何使用KnockoutJS将数据保存到SQL数据库中?,javascript,knockout.js,Javascript,Knockout.js,大家好。我有一个问题,关于如何使用正确的方法通过KnockoutJs将数据保存到SQL数据库中。记录在表格中显示得很好。它应该能够通过此弹出模式保存数据。但在我点击该模式中的Create按钮后,它只会弹出一条失败的消息。有谁能帮我解决这个问题吗?多谢各位 下面是从主js文件中提取的关于保存函数的内容 var data = ko.toJSON(self.Profiles()); $.ajax({ type: 'POST',

大家好。我有一个问题,关于如何使用正确的方法通过KnockoutJs将数据保存到SQL数据库中。记录在表格中显示得很好。它应该能够通过此弹出模式保存数据。但在我点击该模式中的Create按钮后,它只会弹出一条失败的消息。有谁能帮我解决这个问题吗?多谢各位

  • 下面是从主js文件中提取的关于保存函数的内容

            var data = ko.toJSON(self.Profiles());
            $.ajax({
                type: 'POST',
                url: '/ajaxCall/insertProAjax',
                data: "{ Customer:" + ko.utils.stringifyJson(self.Name) + ",customerRemove:" + ko.utils.stringifyJson(self.CustomerRemove) + "}",
                contentType: "application/json",
                success: function (data) {
                    alert("Record has been saved Successfully");
                    MarkCustomerAsSaved();
                    $('#AddNewModel').modal('hide');
                },
                error: function () {
                    alert("Failed");
                }
            }).fail(function (xhr, textStatus, err) { alert(err); });
    
        var Customer = {};
        Customer.Id = c.Id;
        Customer.Name = c.Name;
        Customer.Age = c.Age;
        Customer.Address = c.Address;
        if (isNewRecord === false) {
            $.ajax({
                type: "PUT",
                url: "/api/CustomerAPI/" + c.Id,
                data: Customer
            })
                .done(function (resp) {
                    self.Message("Record Updated Successfully ");
                    self.reset();
                })
                .fail(function (err) {
                    self.Message("Error Occures, Please Reload the Page and Try Again " + err.status);
                    self.reset();
                });
        }
        if (isNewRecord === true) {
            isNewRecord = false;
            $.ajax({
                type: "POST",
                url: "/api/CustomerAPI",
                data: Customer
            })
                .done(function (resp) {
                    self.Message("Record Added Successfully ");
                    self.reset();
                    loadData();
                }).fail(function (err) {
                    self.Message("Error Occures, Please Reload the Page and Try Again " + err.status);
                    self.reset();
                });
        }
    
  • 下面是从ViewModel中提取的关于保存功能的内容

            var data = ko.toJSON(self.Profiles());
            $.ajax({
                type: 'POST',
                url: '/ajaxCall/insertProAjax',
                data: "{ Customer:" + ko.utils.stringifyJson(self.Name) + ",customerRemove:" + ko.utils.stringifyJson(self.CustomerRemove) + "}",
                contentType: "application/json",
                success: function (data) {
                    alert("Record has been saved Successfully");
                    MarkCustomerAsSaved();
                    $('#AddNewModel').modal('hide');
                },
                error: function () {
                    alert("Failed");
                }
            }).fail(function (xhr, textStatus, err) { alert(err); });
    
        var Customer = {};
        Customer.Id = c.Id;
        Customer.Name = c.Name;
        Customer.Age = c.Age;
        Customer.Address = c.Address;
        if (isNewRecord === false) {
            $.ajax({
                type: "PUT",
                url: "/api/CustomerAPI/" + c.Id,
                data: Customer
            })
                .done(function (resp) {
                    self.Message("Record Updated Successfully ");
                    self.reset();
                })
                .fail(function (err) {
                    self.Message("Error Occures, Please Reload the Page and Try Again " + err.status);
                    self.reset();
                });
        }
        if (isNewRecord === true) {
            isNewRecord = false;
            $.ajax({
                type: "POST",
                url: "/api/CustomerAPI",
                data: Customer
            })
                .done(function (resp) {
                    self.Message("Record Added Successfully ");
                    self.reset();
                    loadData();
                }).fail(function (err) {
                    self.Message("Error Occures, Please Reload the Page and Try Again " + err.status);
                    self.reset();
                });
        }
    
    • 敲除和Javascript(以这种方式)正在客户端处理。您需要在后端创建一些东西来接受数据负载并将其保存到数据库中。如果你想留在JavaScript家族,我建议你 . 或者,这就是php或C#发挥作用的地方。

      敲除和Javascript(以这种方式)正在客户端进行处理。您需要在后端创建一些东西来接受数据负载并将其保存到数据库中。如果你想留在JavaScript家族,我建议你
      . 或者,这就是php或C将发挥作用的地方。

      $。ajax
      想要
      数据
      ,你给它
      数据
      。那些不一样。你能解释一下细节吗?我是一名初学者,只需学习击倒JS一周。谢谢。这篇评论与击倒无关。JavaScript区分大小写,JavaScript对象键也区分大小写<代码>数据和
      数据
      是两个不同的键。jQuery的
      ajax
      函数希望
      data
      以小写字母开头,正如它希望
      type
      url
      contentType
      success
      而不是
      type
      url
      contentType
      success
      一样。谢谢阿玛丹。我将密钥名称从Data改为Data。我会更加小心的命名。但这不会影响该过程,控制台会显示一条消息“../ajaxCall/insertproajax404(未找到)”。我认为ajax不能调用任何地方。我还是不明白,这可能对你有帮助。我猜您是在尝试向.net mvc控制器发送邮件?另一种选择是在项目中包含web api,然后发布到.net web api控制器。(这些控制器是用来做这类事情的)
      $ajax
      想要
      数据
      ,你给它
      数据
      。那些不一样。你能解释一下细节吗?我是一名初学者,只需学习击倒JS一周。谢谢。这篇评论与击倒无关。JavaScript区分大小写,JavaScript对象键也区分大小写<代码>数据和
      数据
      是两个不同的键。jQuery的
      ajax
      函数希望
      data
      以小写字母开头,正如它希望
      type
      url
      contentType
      success
      而不是
      type
      url
      contentType
      success
      一样。谢谢阿玛丹。我将密钥名称从Data改为Data。我会更加小心的命名。但这不会影响该过程,控制台会显示一条消息“../ajaxCall/insertproajax404(未找到)”。我认为ajax不能调用任何地方。我还是不明白,这可能对你有帮助。我猜您是在尝试向.net mvc控制器发送邮件?另一种选择是在项目中包含web api,然后发布到.net web api控制器。(这些控制器是用来做这类事情的)是的,我明白了,应该添加一个后端C#文件来支持服务器端。谢谢你提醒我。是的,我看到了,应该添加一个后端C#文件来支持服务器端。谢谢你提醒我。