Php 通过ajax发送多维数组
基本上这里是我创建数组的jQuery和HTML代码。它基本上使用类设置获取每个div,并使用属性rel检查它是否有span,如果有,它将插入数组中的array下。每个新的div.settign span rel属性都将插入到同一父数组下的另一个数组中 检查此代码以了解它- 也贴在这里-Php 通过ajax发送多维数组,php,javascript,jquery,html,ajax,Php,Javascript,Jquery,Html,Ajax,基本上这里是我创建数组的jQuery和HTML代码。它基本上使用类设置获取每个div,并使用属性rel检查它是否有span,如果有,它将插入数组中的array下。每个新的div.settign span rel属性都将插入到同一父数组下的另一个数组中 检查此代码以了解它- 也贴在这里- jQuery(document).ready(function() { var rel = []; jQuery(".setting").each(function() { rel
jQuery(document).ready(function() {
var rel = [];
jQuery(".setting").each(function() {
rel.push(jQuery(this).find('span[rel]').map(function() {
return this.getAttribute('rel');
}).get());
});
jQuery("body").text(rel);
});
和html-
<div class="setting">
<span rel="Variable">Variable</span>
<span rel="Item">Item</span>
<span rel="Something">Something</span>
</div>
<div>
<span rel="Smth">Smth</span>
<span>Sec</span>
</div>
<div class="setting">
<span>Second</span>
<span rel="first">First</span>
<span rel="Third">Third</span>
</div>
此ajax代码是通过wordpress生成的,因此其ajax请求与默认ajax请求略有不同
你能检查一下到底是什么问题吗
编辑:
刚刚尝试用
print\r($myArray)输出在php端,它输出空字符串。最好将其转换为json在浏览器控制台(网络部分)中检查AJAX请求中发布数据的格式
您可以在中找到有关在浏览器中打开控制台的信息
-JavaScript中的JSON
要将对象转换为JSON,请使用JSON.stringify
:
var json_text = JSON.stringify(your_object, null, 2);
将数组编码为JSON,然后使用Ajax请求发送。要在PHP中解码JSON,请使用或者尝试打印($array)以查看输出?我必须现在就跑,否则我会尽力帮助你,但也许这会让你走。祝你好运print_r()不输出任何内容(空白)。听起来像是空对象,所以没有设置。我确实看到您正在序列化某些内容,但随后又向其中添加了查询字符串。在这种情况下,您的数组似乎会被破坏?您正在用Javascript设置myArray,但试图用PHP读取它?PHP将无法读取Javascript变量的值。对我来说现在是凌晨2点,所以我可能有点模糊,但这看起来像是你正在尝试做的事情,而且似乎不可能。尝试在不序列化的情况下传递它,但它仍然是一样的。忘了提到我也尝试用JSON传递它,但它也返回了空白。如果我使用JSON,它将返回两个输入(…,true);在那之后,它不会显示任何内容。
var json_text = JSON.stringify(your_object, null, 2);