みなさんこんにちは。 KnockoutJsを使用してデータをSQLデータベースに保存する正しい方法を使用する方法について質問があります。レコードはテーブルによく表示されます。それは、このポップアップモーダルを介してデータを保存することができるはずです。しかし、そのモーダルでCreateボタンをクリックすると、失敗したMessageだけがポップアップされます。誰でもこの問題を解決するために私を助けてもらえますか?どうもありがとうございました。以下は KnockoutJSを使用してSQLデータベースにデータを保存する方法は?
- は以下
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); });
はViewModelにからの抽出物についての保存機能で保存機能についてメインのjsファイルからの抜粋です
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(); }); }
'$ .ajax'は' data'を望んでいます。あなたは 'Data'を与えています。それらは同じではありません。 – Amadan
詳細を教えてください。私は初心者です、ちょうど1週間knockoutJsを学ぶ。ありがとうございました。 – Auck
コメントはノックアウト関連ではありませんでした。 JavaScriptでは大文字と小文字が区別されるため、JavaScriptのオブジェクトキーも同様です。 'data'と' Data'は2つの異なるキーです。 jQueryの 'ajax'関数は' type'、 'url'、' contentType'と 'success'を期待し、' Type'、 'URL'、' ContentType'や '' ContentType''ではなく、 'data'が小文字で始まることを期待しています。成功。 – Amadan