序列化jquery排序表
我已经在这个网站上搜索了一段时间,但我找不到解决问题的好方法。我希望能够在页面上保存jquery Portlet的状态。如果可以避免的话,我宁愿不要“保存状态”按钮 无论如何,我只是从他们的portlet示例中复制了jquery代码:序列化jquery排序表,jquery,jquery-ui,serialization,portlet,Jquery,Jquery Ui,Serialization,Portlet,我已经在这个网站上搜索了一段时间,但我找不到解决问题的好方法。我希望能够在页面上保存jquery Portlet的状态。如果可以避免的话,我宁愿不要“保存状态”按钮 无论如何,我只是从他们的portlet示例中复制了jquery代码: $(function() { $(".column").sortable({ connectWith: '.column' }); $(".portlet").addClass("ui-widget ui-widget-c
$(function() {
$(".column").sortable({
connectWith: '.column'
});
$(".portlet").addClass("ui-widget ui-widget-content ui-helper-clearfix ui-corner-all")
.find(".portlet-header")
.addClass("ui-widget-header ui-corner-all")
.prepend('<span class="ui-icon ui-icon-minusthick"></span>')
.end()
.find(".portlet-content");
$(".portlet-header .ui-icon").click(function() {
$(this).toggleClass("ui-icon-minusthick").toggleClass("ui-icon-plusthick");
$(this).parents(".portlet:first").find(".portlet-content").toggle();
});
$(".column").disableSelection();
});
您的portlet是否具有id属性 从 如果serialize返回空字符串, 确保id属性包含 强调
您想使用sortable的.toArray()函数 从jquery可排序文档中: 托雷 签名: .可排序(“toArray”) 序列化可排序项的项id 转换为字符串数组。如果你有
<ul id="a_sortable"><br>
<li id="hello">Hello</li><br>
<li id="goodbye">Good bye</li><br>
</ul>
然后
结果[0]将包含“hello”和
结果[1]将包含“再见”
因此,为了能够保存状态,您必须对调用.sortable('toArray')的更改选项进行某种ajax调用,并且您将有一个很好的id数组。最后,我用以下代码解决了这个问题:
$(".column").each(function() {
alert($(this).sortable("toArray"));
});
它序列化了每一列,而不仅仅是第一列。是的,我看到了。在我添加带下划线的ID后,它只返回[object]?您应该使用firefox和firebug,然后像这样将输出写入控制台:console.log(output);它会让你更好地了解你到底得到了什么。你能不能也显示标记,或者最好在JSFIDLE或jsbinI上重新创建标记?我无法实现“序列化”,所以我像这样使用了“toArray”,并将结果传递给我的控制器。耶!
var result = $('#a_sortable').sortable('toArray');
$(".column").each(function() {
alert($(this).sortable("toArray"));
});