我正在通过失败学习Ajax,并打了墙:
我有一个数组(如果重要的是,数组根据用户检查的复选框存储编号),这是用Javascript编写的.
我有一个功能,当用户点击“保存”按钮时调用.功能如下:
function createAmenities() {
if (window.XMLHttpRequest) {
//code for IE7+,Firefox,Chrome and Opera
xmlhttp = new XMLHttpRequest();
}
else {
//code for IE6,IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById('message').innerHTML = xmlhttp.responseText;
}
}
var url = "create_amenities.PHP";
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
我的问题是:
我可以把这个函数拉到我试图调用的PHP脚本(‘create_amamines.PHP’)中的数组?
此外,我应该尝试使用JSON吗?如果是这样,怎么可以通过ajax发送JSON对象?
提前致谢.
如果你的数组有1维或者是一个关联数组,你应该使用JSON.
Json将一个完整的数组结构转换成一个字符串.
这个字符串可以很容易地发送到您的PHP应用程序并转回到一个PHP数组.
关于json的更多信息:http://www.json.org/js.html
var my_array = { ... };
var json = JSON.stringify( my_array );
在PHP中,您可以使用json_decode对字符串进行解码:
http://www.php.net/manual/en/function.json-decode.php
var_dump(json_decode($json));