提问人:Michael Stum 提问时间:8/17/2008 更新时间:12/30/2014 访问量:5716
ASP.net AJAX 拖放?
ASP.net AJAX Drag/Drop?
问:
我想知道是否有预制的解决方案:我在 ASP.net 网站上有一个列表,我希望用户能够通过拖放对列表进行重新排序。此外,我希望有第二个列表,用户可以从第一个列表将项目拖到其中。
到目前为止,我找到了两种解决方案:
- Ajax 控件工具包中的 ReorderList,它需要一些手动工作来确保更改保存到数据库中,并且不支持在列表之间拖放。
- Telerik 的 RadGrid 可以满足我的一切需求,但价格远远超出了我的预算。
是否有其他人有一些想法或至少一些关键字/指针可以进一步调查?值得注意的是,两个列表之间的拖放是我对如何在 ASP.net 中做到这一点一无所知的事情。
顺便说一句,目标框架是 3.0。
答:
这只是个人意见,但我发现在这种情况下,现成的控件的问题在于它们非常臃肿,因为它们试图满足每个人的目的。如果你只需要一个可排序的列表,那么一个简单的 Scriptaculous 列表或带有快速 WebMethod 回调的 jQuery 列表应该非常符合要求,你显然可以把它粘贴到你自己的用户控件中。
正如我所说,这只是我的意见,但我不会花钱买一些会给我的页面增加大量开销的东西,而我可以花(字面上)10分钟免费写一个。
我已经评估了 Telerik 网格以及 Infragistics 版本。最后,我们采取了一种类似于tags2k建议的方法。我们只是编写了自己的 javascript 并调用了 .Net PageMethods 来执行服务器端工作。
我们发现这两种“开箱即用”的解决方案都很臃肿。除非您将分页设置为每行 20 条记录,否则它们确实会破坏性能。
Mootools sortables 插件就是这样做的,最重要的是,它是免费的;)
http://demos.mootools.net/Sortables
评论
查看 Raj Kaimal 的 ajax 控件扩展器:
http://weblogs.asp.net/rajbk/Contents/Item/Display/517
它就像一个魅力。
评论