0
我有jsGrid工作的全部CRUD操作,但是當我添加一條新記錄時,post方法以某種方式將所有字段轉換爲字符串,然後再傳輸到我的API。我的API將所有字段接收爲字符串,無論它們是字符串,數字還是布爾值。jsGrid插入項問題
這裏是我的insertItem功能:
console.log("data before post: " + JSON.stringify(item));
insertItem: function (item) {
var d = $.Deferred();
$.ajax({
type: "POST",
url: "https://myserver...",
data: item,
dataType: "json",
}).done(function (response) {
console.log("done: " + JSON.stringify(response));
d.resolve(response);
}).fail(function(msg) {
console.log("fail" + msg);
d.reject();
});
}
如果我CONSOLE.LOG項目目標之前$就它顯示數字字段正確。例如:
data before post: {"question":"My Question","value":45,"timeout":10, "isActive":true }
但在完成功能的console.log中,JSON如下所示,這也正是它是如何在服務器上接收到的:
done: {"question":"My Question","value":"45","timeout":"10", "isActive":"true"}
如果我使用郵遞員,發佈適當的json對象,一切都很好,數據類型是他們應該的,所以我的API沒有錯。 api響應也會在收到json對象時返回它。
不知何故,jsgrid將所有屬性值轉換爲字符串,然後發佈到我的API。這真的很煩人。
更新: 即使我嘗試更換數據:與項目:
data: {"question":"myquestio77", "value": 77}
77仍然由我的API收到的 「77」。