jQuery jsgrid插件允许在gridview中插入新行。输入数据后,单击行上的加号(+)按钮以添加到网格中。我想尝试将当前动作保存到服务器。单击新行中的+按钮时如何调用Ajax Web服务?
我可以使用类名访问“ +”按钮。并触发一个js函数。但是想知道是否还有其他更好的选择
答案 0 :(得分:0)
您可以在controller
定义中显示jsGrid
代码吗?
您将insertItem
属性添加到controller
对象。应该是这样的:
controller: {
loadData: ... code to load data to grid ....
,
insertItem: function(item) {
return $.ajax("/api/users/", {
method: "POST",
data: { item },
error: (jqXHR , status, err) => {
alert("Error: " + jqXHR.responseText");
},
success: (result, status, jqXHR) => {
console.log(result);
}
},
...
item
将包含您添加的新行。以上假设您有一个后端Web服务/ api / users正在侦听HTTP POST。
如果Web服务返回200状态代码,则显示输入字段的网格将关闭,并且该行将处于读取模式。如果返回码不是200,则网格输入行将保持数据输入模式。