jQuery UI可排序方法refresh如何工作。我有多个span
标记,里面有P
个标记。 P
代码可以从span
到另一个$('span').sortable('refresh')
进行排序。但是当我在里面添加带有p标签的新跨度时,无法识别新的P标签。刷新方法应该使新添加的可识别。但它似乎没有工作或做任何事情。 {{1}}。
答案 0 :(得分:2)
我认为问题在于refresh
正在寻找仅使用.sortable()
初始化的容器的子元素。您要添加子元素和容器,因此需要使用.sortable()
初始化这些新容器,而不是使用.sortable('refresh')
。
$('#span').click(function() {
var x = '<span><p>NEW Span</p></span>';
$(x).appendTo('#form').sortable({connectWith: 'span'});
});
请参阅更新的演示:http://jsfiddle.net/ySP96/3/。
答案 1 :(得分:0)
您必须手动执行以下操作:
$("#MyList").sortable({
update: function() {
var postData = $(this).sortable("serialize");
$.post("UpdateItemOrder.aspx", postData, function(theResponse) {
$("#ResultsArea").html(theResponse);
});
},
beforeStop: function(event, ui) {
// Handle new items only
if ($(ui.item).hasClass("new-item")) {
// Refresh the list
var postData = $("#MyList").sortable("serialize");
$.post("UpdateItemOrder.aspx", postData, function(theResponse) {
$("#ResultsArea").html(theResponse);
});
}
});
});