FineUI 官方论坛
标题:
【常见问题】Grid删除行时Grid1.SelectedRowIndexArray.Length==0
[打印本页]
作者:
sanshi
时间:
2018-9-20 12:10
标题:
【常见问题】Grid删除行时Grid1.SelectedRowIndexArray.Length==0
新手必看!如果你已经有 FineUI一年以上使用经验,请绕行!
问题都是这样:
在没有找到解决办法之前,都很神奇。
在知道最终答案的时候,一般都是:切!这么简单!
这是一个来自于知识星球的主题,这个问题新手最容易犯了,记录一下:
[attach]11492[/attach]
仅凭这个代码片段是无法解决问题的。我们需要用户提供基于空项目重现问题的示例,这个很关键,也希望大家能及时提供,方便快速解决问题:
[attach]11494[/attach]
拿到用户提供的空项目后,调试很容易发现问题:
[attach]11495[/attach]
在用户代码中,可以看到明显的错误:
[attach]11496[/attach]
你能发现问题吗?
这里少了 IsPostBack 的判断,所以每次回发时都会重新加载表格数据(此时会清空当前选中项),所以自然后台就是这样了:
Grid1.SelectedRowIndexArray.Length == 0
解决办法:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
btnDelete.ConfirmText = String.Format("你确定要删除选中的 <b><script>{0}</script></b> 行数据吗?", Grid1.GetSelectedCountReference());
btnDelete.OnClientClick = Grid1.GetNoSelectionAlertReference("请至少选择一项!");
BindGrid();
}
}
复制代码
然后一切都归于正常:
[attach]11497[/attach]
[attach]11498[/attach]
作者:
shihahayue
时间:
2018-9-20 12:26
这玩意还一年以上,是开发就应该注意到
作者:
sanshi
时间:
2018-9-20 12:41
shihahayue 发表于 2018-9-20 12:26
这玩意还一年以上,是开发就应该注意到
说是那么说,不过还是有些开发人员容易忽略这个问题,然后遇到的错误就千奇百怪
作者:
zy32002
时间:
2018-9-20 13:34
这问题,群里的没想好同学已经告诉他了,他不信。。。。。
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4