我已经实现了jquery的拖放。
Div项目放到另一个div中
有没有可能用c#处理丢弃的事件?我想在数据库中插入拖放的项目。
或者我是否可以从jquery调用c#方法并发送一些字符串数据?
发布于 2012-02-20 14:27:54
首先你需要决定一个拖放库,你不能过去。JQuery UI。http://jqueryui.com/demos/droppable/也想删除元素并对它们进行排序,下面我们来看一下。TinySort http://tinysort.sjeiti.com/
管理订单的最好方法是向可拖动面板添加额外属性,例如
然后,droppable插件的Stop函数调用一些ajax到web方法
--可丢弃
$("#TopBodyPanel").droppable({ drop: function (event, ui) {
$(ui.draggable).detach().css({ top: 0, left: 0 }).appendTo($(this));
$.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: "{ControlId: '"+ui.draggable.attr('id')+"',contentPosition :'" + ui.draggable.data("order-position") + "',ContainerId: '"+$(this).attr('id'))+"',}",
dataType: 'json',
url: $(location).attr('href') + "/UpdatePanelContent",
success: function (result)
{ //do something
},
});
}});
将信息保存到与登录用户关联的数据库中的xml字段。
在页面加载时。遍历面板容器。
foreach(....){
ControlName.Attributes.Add(dataDefaultIndexAttributeName, pageItem.Index.ToString());
}
然后在HTML中
$(function() {
$("#sortable-wide-column-id").children("div").tsort({ attr: 'order-position', order: 'asc' });
}):
我意识到这不是一个端到端的解决方案,但是这是我几个月前为一个登录用户主页的拖放、可排序小部件实现的一些代码。
发布于 2012-02-20 06:55:53
最简单的答案可能是从“drop”事件处理程序调用web服务,该事件处理程序将数据插入数据库。
This answer有一个从jquery调用web服务的示例,它根据已知的div向它传递一些数据。
https://stackoverflow.com/questions/9354031
复制相似问题