如何使用jQuery提交数据?

时间:2011-07-22 11:10:03

标签: jquery dom

我有一个table.sortables多个<tr id="link1"> ..</tr> ,每个链接都有多个链接。使用jQuery我做了以下几点。

  1. 修改每一行以添加一个包含span.grab的表格单元格。
  2. 在表格上实现了jQuery可排序。
  3. 删除行时。将出现一个链接,询问用户是否要保存。
  4. 当用户点击链接时,我会抓住它以准备向php脚本发送ajax请求。
  5. 这就是我被困住的地方。

    每个tr都有链接ID ..

    <table class="sortable" id="group1">
    

    每个表都有自己的ID。

    $_POST['link_order']['group1'] = '1|2|3';
    $_POST['link_order']['group2'] = '4|5|6';
    

    问题是..如何从html中提取这些数据所以在我的PHP脚本中我最好得到这样的东西。

    $('table.sortable').each(function() {
    
    });
    

    上面的任何变化都很好,我也可以修改HTML。我只需要发送PHP菜单。

    我从这开始。

    {{1}}

    这是我卡住的地方,因为我不知道数据是应该进入对象还是字符串或者是什么。有没有人这样做过?

2 个答案:

答案 0 :(得分:1)

您可以使用可排序窗口小部件的serialize()方法。根据文件:

  

默认情况下,通过查看格式中每个项目的ID来工作   'setname_number',它吐出像哈希一样的哈希   “的setName [] =&数放大器;的setName [] =号码”。

     

您还可以将选项哈希作为自定义的第二个参数   该功能如何运作。可能的选项是:'key'(替换   “part1[]随心所欲”,“属性”(测试另一个属性   比'id')和'expression'(使用你自己的正则表达式)。

因此,如果您在id属性(link_1而不是link1)中添加下划线字符,serialize()默认会生成$POST['link']参数

答案 1 :(得分:0)

查看可排序的serializetoArray方法。

序列化将为您提供foo[]=1&foo[]=5&foo[]=2

toArray会为您提供一系列项目,然后您可以将这些项目转换为您自己的网址参与。