我在javascript中有这个数组:
arr = [1, "string", 3]
这就是我的ajax电话:
$.post("./ajax_book_client.php",
{'client_info[]': arr},
function(data) {
// some stuffs here
}
});
这是php的摘录:
<?php
$arr = $_POST['client_info'];
// I want to access the array, indexed, like this:
$arr[0] = 2;
$arr[1] = "Hello";
$arr[2] = 10000;
?>
但是我收到了这个错误:
未捕获的TypeError:非法调用jquery-1.8.3.min.js:2
这样做的正确方法是什么? 谢谢!
答案 0 :(得分:2)
从}
删除});
以删除语法错误。
也无需将[]
与client_info
一起使用,以便将其删除。
使用:
<script>
var arr = [1, "string", 3];
$.post("./ajax_book_client.php",
{'client_info': arr},
function(data) {
// some stuffs here
}
);
</script>
ajax_book_client.php
<?php
$arr = $_POST['client_info'];
echo $arr[0];
echo $arr[1];
echo $arr[2];
?>
答案 1 :(得分:1)
$.post("./ajax_book_client.php",
{'client_info[]': arr},
function(data) {
// some stuffs here
}
});
到
$.post("./ajax_book_client.php",
{'client_info[]': arr},
function(data) {
// some stuffs here
// } <--remove this
});
答案 2 :(得分:0)
您的JS中存在语法错误。删除一个}
。
答案 3 :(得分:0)
将client_info[]
移至client_info
和额外大括号
尝试
<script>
var arr = [1, "string", 3];
$.post("./ajax_book_client.php",
{'client_info': arr},
function(data) {
// some stuffs here
}
);
</script>