Aug 07, 2013, 10:22 AM
mvc comboTree?
Combobox+ treepanel
on combobox Expand , it will create element.
what should I do?
error:
view:
on combobox Expand , it will create element.
what should I do?
error:
view:
@(
X.ComboBox().ID("cboDept")
.Editable(false)
.EmptyText("xxxx")
.FieldLabel("SelectDept")
.LabelStyle("micolor")
.Anchor("100%")
.MaxHeight(390)
.Tpl(
X.XTemplate().ID("tmp").Html("<tpl for='.'><div ><div id='addDeptTreeDiv'></div></div></tpl>"))
.Items(
X.ListItem().Text("")
)
.AllowBlank(false)
.Listeners(l =>
{
l.Select.Handler = "Ext.emptyFn";
l.Expand.Handler = "App.addDeptTree.show();App.addDeptTree.render('addDeptTreeDiv');";
})
)
@(
X.TreePanel().ID("addDeptTree")
.Store(
Html.X().TreeStore()
.Proxy(
Html.X().AjaxProxy().Url(Url.Action("DeptNodes"))
)
)
.AutoScroll(true)
.Hidden(true)
.Animate(false)
.Width(150)
.Height(200)
.Border(true)
.Root(
X.Node().Text("dddd").Expanded(true).NodeID("0")
)
.Listeners(l => {l.ItemClick.Handler = "App.cboDept.setValue(record.get('text'));App.cboDept.collapse();";
})
)
Controller: public ActionResult DeptNodes(string node)
{
NodeCollection nodes = new NodeCollection();
if (!string.IsNullOrEmpty(node))
{
for (int i = 1; i < 6; i++)
{
Node asyncNode = new Node();
asyncNode.Text = node + i;
asyncNode.NodeID = node + i;
nodes.Add(asyncNode);
}
for (int i = 6; i < 11; i++)
{
Node treeNode = new Node();
treeNode.Text = node + i;
treeNode.NodeID = node + i;
treeNode.Leaf = true;
nodes.Add(treeNode);
}
}
return this.Store(nodes);
}