我有一个项目的复选框列表。我需要更新我的数据库以选择哪些项目。项目列表是动态显示的。
问题是如何通过ajax传递ID列表?
这是我的ajax代码:
function update(form,div,PhpFile,type)
{
if (request)
{
var obj = document.getElementById(divId);
request.open("POST",PhpFile);
//setting the header
request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
request.onreadystatechange = function()
{
if (request.readyState == 4 &&
request.status == 200){
obj.innerHTML =request.responseText;
}
}
if(type=='news')
request.send(?????);
}
}
我标有???我不知道放在那里的空间。
当然,我可以单独更新每个复选框,但这是一个非常糟糕的解决方案。
答案 0 :(得分:1)
PHP 5可以解码JSON,在JS中你需要使用一个库。这似乎是一个受欢迎的答案。
PHP中的JSON http://www.php.net/manual/en/function.json-decode.php
答案 1 :(得分:0)
我认为您可以在JavaScript中序列化数组,使用AJAX将其作为字符串传递,然后在PHP中对其进行反序列化。或者将数组值转换为分隔的字符串(逗号或管道分隔),然后在PHP中展开该字符串。这使得您传输的数据具有人类可读性,这对于调试非常有用。
答案 2 :(得分:0)
使用JSON.stringify()
将数组转换为JSON,发送它,然后使用json_decode()
将JSON字符串转换回PHP中的对象。