ASP.Net MVC - 构建按需加载TreeView

时间:2010-01-14 01:27:23

标签: jquery asp.net-mvc

我想知道如何使用ASP.Net MVC构建按需加载树视图。我理解使用列表创建JQuery TreeView所涉及的内容,但是按需加载部分确实让我很困惑。我不需要完整的解决方案,但是有人能指出我应该从哪里开始正确的方向吗?

我使用WinForms完成了很多次操作,保持了视图状态。我看到的一个问题是记住已扩展的所有节点,而不仅仅是新扩展的节点。

如果有人有任何建议,我将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:1)

你需要找到一个适合你的treeview jquery插件,然后将它绑定到MVC中的控制器,它可以按照你想要的方式运行。

确保你的html渲染了子节点的占位符(或者jQuery插件知道如何自己添加子节点)。

您必须为树视图提供一组具有特定参数的网址,或者响应事件处理程序并拨打电话以获取子项。

在寻找treeview插件时,如果找到支持子节点异步加载的插件,您的生活会更轻松。

如果你必须自己滚动,你可能有一个ID为ChildNode-1的div,并且调用可能类似于MVC中的以下内容:

$("#ChildNode-1").load("/[your_controller]/GetNode", {nodeId:1});

在你的控制器上你会得到一个名为GetNode的方法,它返回一个PartialViewResult。它将接受一个名为nodeId的int类型的参数。使用属性[HttpPost]标记它。 jQuery魔法处理后期动作和MVC魔术和反射处理其余部分。您的PartialViewResult还必须返回更多格式化的节点,以便根据上述内容提交更多提交。

干杯, -jc