保存序列化的可排序形式

时间:2015-02-22 16:53:56

标签: php jquery mysql jquery-ui

我有一个简单的表单,它有3个文本输入,一个可排序的li列表和一个隐藏的输入,可排序的输出将到达。

  $(document).ready(function () {
    $('ul').sortable({
        axis: 'y',
        stop: function (event, ui) {
	   var data = $(this).sortable('serialize');
            document.getElementsByName("order").value = data;
	}
    });
});
<link type="text/css" rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/smoothness/jquery-ui.css"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js"></script>

<form>
    
    <ul id="sortable">
        <li id="item-1">Item 1</li>
        <li id="item-2">Item 2</li>
        <li id="item-3">Item 3</li>
    </ul>
    <input type="text" name="firstname" placeholder="first name">
        <br>
    <input type="text" name="lastname" placeholder="last name">
        <br>
    <input type="text" name="phone" placeholder="phone">
        <br>
    <input type="hidden" name="order" value="">
        
     <input type="submit" value="Submit">
        
</form>

我希望做两件事:

1)将序列化sortable的字符串输出转换为隐藏“order”输入的值。

2a)使输出更容易使用(类似“1,2,3”而不是“item [] = 1&amp; item [] = 2&amp; item [] = 3”)

2b)使用php以下列形式将表单数据保存到mysql。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

1)您可以接受表单的提交事件,并使用函数首先将序列化的sortable保存到隐藏的输入中。

2a)我认为最好使用它,然后使用php以您喜欢的其他格式转换数组。

2b)在Google中搜索,您会找到有关如何操作的信息。