0

好的,所以我正在开发一个 Wordpress 插件,该插件允许用户更改选项的顺序。该选项在 php 中存储为一个数组,即update_option('box_order',$box_array);我已经将这些框的数组按顺序回显到具有 jQuery UI 的页面上,以允许拖动重新排序。

我监听重新排序并通过 JS 调用这个函数

var order = jQuery( "#sortable" ).sortable( "toArray" );//get array of ids in order
jQuery('input.order-display').val(order); //set input field val to order array

这一切都很好,我得到 input[type=text] 显示随机播放的新订单。

但是 - 我有一个提交按钮,一旦订购完成,我需要提交表格。问题是我正在处理一个无法修改的现有插件。这个 PHP 插件接受输入内容并调用update_option('box_order',$_POST['input_name']);

你们对如何使 javascript 数组与 php 数组的语法完全匹配,以便在提交表单时用于通过我无法控制的插件更新 Wordpress 选项有什么建议。我不想命名插件,因为它是一个令人惊讶的项目,但我正在构建一个开源添加。

我知道 JSON.stringify() 等,但这不是一个选项,因为 PHP 插件只监听输入本身的 $_POST。

谢谢!

4

1 回答 1

1

我能想到两件事:

  1. 动态创建<input name="input_name" />框并正常提交表单。这不是我的偏好,它有点骇人听闻。

  2. 使用 AJAX 发布到 PHP 中,input_name: jQuery.param(order)用于将数组序列化为一种格式,使 PHP 将 POST 数据视为数组。另见:http ://api.jquery.com/jQuery.param/

于 2012-05-10T12:23:34.787 回答