我正在使用jQuery,AJAX和PHP来更新事件下拉框的内容。我的代码当前触发事件并使用AJAX调用PHP函数,该函数进入数据库并获取与下拉列表的每个成员相关联的记录。
我现在可以将这个二维数组(每个数组中包含列数组的记录数组)返回给我的jQuery函数但是我不知道如何将数组转换成我可以使用的东西
调用AJAX的jQuery代码:
var element= $('select[name=elementName]');
var data = 'inData=' + element.val();
// Call AJAX to get the info we need to fill the drop downs by passing in the new ID
$.ajax(
{
type: "POST",
url: "ops.php",
data: "op=getInfo&" + data,
success:
function(outData)
{
// WHAT DO I DO HERE TO CONVERT 'outData' INTO A 2-DIMENSIONAL jQUERY ARRAY??
},
error:
function()
{
}
});
PHP代码:
$sqlResults= mysql_query("SELECT data FROM table WHERE id='".$_POST['inData']."'");
$outData = array();
// Fill the data array with the results
while ($outData[]= mysql_fetch_array($sqlResults));
// echo the data to return it for use in the jQuery file
echo $outData;
发布的代码工作正常 - 我只是不知道如何在jQuery中读取'outData'。
提前感谢您的帮助!!
答案 0 :(得分:1)
答案 1 :(得分:1)
您正在寻找json
//php
echo json_encode($outData);
//javascript
$.ajax({
type: "POST",
url: "ops.php",
data: "op=getInfo&" + data,
dataType: "json",
success: function(outData) {
console.log(outData); //this will be an object just like
//your php associative array
},
error: function() {
}
});
答案 2 :(得分:0)
答案 3 :(得分:0)
JSON可以做到这一点,但为什么不从另一个角度看呢?
如果您正在ping PHP以获取更新信息,请让PHP在您的选择框中输出您想要的选项值。然后使用jQuery AJAX的HTML返回到.html()将结果放入select元素中。
有一些不同的方法可以给猫皮肤,我会认为这种更简单的方法可以让你有更多的时间来做更多的jQuery魔法。