gpt4 book ai didi

javascript - 如何在jqgrid中加载新添加的数据

转载 作者:行者123 更新时间:2023-11-30 13:34:04 24 4
gpt4 key购买 nike

我知道这对某些人来说听起来很简单。我也试过这个one .但是由于某些原因,我确实无法在jqgrid中刷新和查看我的新添加、编辑和删除。

我在我的程序中制作了一个按钮,可以添加、编辑和删除,之后,它将刷新我的 jqgrid 并显示我在它们中所做的任何更改。例如,我添加了新数据。第一次尝试时,它会显示新添加的数据,但在第二次尝试时,它不会再显示了。我的编辑和删除数据也不会刷新。这是代码:

function Edit(){  
var selected = $("#list1").jqGrid('getGridParam', 'selrow');
var dat = {
"ID": 'xyz',
...
"keyFields": [{"..."}]
};
update(dat);
$('#list1').trigger('reloadGrid');
}

function update(dat){
$.ajax({
type: 'GET',
url: 'mydata.php?' + $.param({path:'this/update',json:JSON.stringify(dat)}),
dataType: Settings.ajaxDataType,
success: function(data) {
if ('error' in data)
{
alert('ERROR']);
}
}
});
}

服务器端正常并且更新了我在屏幕上所做的一切。当我第一次仅使用添加按钮执行此操作时,完全没有问题。只有在我的编辑和删除按钮之后才出现问题。希望有人能帮助我理解这一点。

最佳答案

您没有发布您使用的 jqGrid 的任何定义,所以我只能说您发布的代码中有什么问题。

第一个问题是您必须将 $('#list1').trigger('reloadGrid');inside 放在 success 你的 update 函数的 $.ajax 调用句柄。只有在服务器上成功更新数据后,您才应该触发网格重新加载。

如果使用 loadonce:true 参数将 jqGrid 的 datatype 参数的原始值更改为 datatype:'本地'。如果您使用 loadonce:true 并且需要从服务器重新加载数据,您必须将 jqGrid 的 datatype 参数重置为其初始值('xml' 或 'json ' 取决于你使用什么),然后才根据 'reloadGrid' 重新加载网格。要更改数据类型,您可以使用 jqGrid 的 setGridParam 方法。

关于javascript - 如何在jqgrid中加载新添加的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5620009/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com