Rob*_*ozo 10 javascript extjs extjs4
我有4个网格,启用了拖放插件.它们的初始网格依赖于名为state_id的db中的值.
当我将所选行放入新网格时,我更新state_id值,然后告诉它与db同步并更新相关项的值.
这在大多数情况下都可以正常工作.当发生以下情况时,我得到此URL未定义错误
当添加到网格中的第一个项目最初来自同一网格时,似乎只会发生此错误.
我的控制器中的drop事件处理程序
dropit: function (node, data, dropRec, dropPosition) {
if (node.dragData.records[0].store.$className == "AM.store.BacklogCards")
{
data.records[0].set('state_id', 1);
this.getBacklogCardsStore().sync();
}
else if (node.dragData.records[0].store.$className == "AM.store.InprogressCards")
{
data.records[0].set('state_id', 2);
this.getInprogressCardsStore().sync();
}
else if (node.dragData.records[0].store.$className == "AM.store.ReviewCards")
{
data.records[0].set('state_id', 3);
this.getReviewCardsStore().sync();
}
else
{
data.records[0].set('state_id', 4);
this.getDoneCardsStore().sync();
}
//node.dragData.records[0].store.sync();
},
Run Code Online (Sandbox Code Playgroud)
有关导致此问题的原因和解决方法的任何想法?
谢谢
我可以建议您使用一个商店而不是三个,并且只需添加三个相同的网格,所有网格都使用同一商店,但在 state= 上进行过滤?
这样,您可以简单地更新放置状态、刷新两个相关网格并同步一个商店。