weixin_42404875 2010-12-03 15:18
浏览 297
已采纳

ExtJs Window 和 CheckboxSelectionModel

[color=blue][size=small]
在下初学ExtJs,在做一个简单的ExtJs + SSH的增删改时,遇到了这样的两个问题:

首先是Window,当我在进行添加时,调用了window.show()方法,窗口就会显示,但是我提交之后就要将此窗口关闭掉,于是我用了close()方法。
但是关闭之后如果整个页面不刷新的话,在点添加窗口就出不来了,而且还有个错误。
我也尝试用了hide()方法,但是那个只是将窗口隐藏起来,窗口里表单中的内容仍是我以前输入的那些,这样就很不好。
不知道有没有什么好的解决办法?

其次就是CheckboxSelectionModel的问题,我想在页面中实现一个一次性删除多条记录的操作。但是又不知道如何才能将选中的数据ID准确的传入后台,我知道有一个方法是getSelected(),但是它一次只可以记录一条数据。当我尝试用getSelections()方法时,它虽然知道我选择了几条数据,但是它并不知道我选择的到底是哪一条,这个问题哪位大虾能解救下,在下不胜感激

在下新手,分数不多,还请各位大虾体谅
[/size][/color]

  • 写回答

1条回答 默认 最新

  • cyrilluce 2010-12-03 16:47
    关注

    Window默认的closeAction为close,也就是会销毁。一般要重用就改为hide
    然后,你应该在每次调用show前重置一下里面的数据,记住“重用”这个概念,让它每次操作都不影响下一次的数据。

    grid.getSelectionModel().getSelections()返回的是Record数组,你想要将这个选择列表传递给后台,可以将这些记录的唯一标识传过去(比如ID)
    var ids = [];
    Ext.each(records, function(r){
    ids.push(r.get("id")); // 根据唯一标识的属性名取值
    });

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?