当通过JSON对象发送时,如何在ajax页面中捕获数组
how to capture array in ajax page when sent through JSON object
我通过ajax将数组从一个页面发送到另一个页面。为此,我使用了JSON对象。我可以发送,但无法在ajax页面中捕获。请帮助我如何获取数组值。javascript:
var jsonString = JSON.stringify(dataString);
$.ajax({
type: "POST",
url: "ajaxpage.php",
data: {data : jsonString},
cache: false,
success: function(response){
alert("ok");
$('#test').html(response);
}
});
PHP页面:
$data = json_decode(stripslashes($_POST['data']));
// here i would like use foreach:
foreach($data as $d){
echo $d;
}
请在这方面帮助我。我被困在这里
如果您想将JSON解码为关联数组,您应该在json_decode
:中指定
更换
$data = json_decode(stripslashes($_POST['data']));
带
$data = json_decode(stripslashes($_POST['data']), true);
更多信息请参见json_decode
参考
另外,dataString
可能已经是一个JSON字符串了吗?
我想这就是你想要的,我已经尝试过了,它有效
在您的php:中
<?php
$data = ($_POST['data']);
foreach($data as $d){
echo stripslashes($d);
}
?>
在您的jsvascript/jquery中:
<script>
$(document).ready(function(){
$('a').on('click',function(){
var dataString = {
'id':'1',
'name':'peter parker',
'age':'unknown',
'role':'spiderman'
}
$.ajax({
url: "<?php echo $this->webroot;?>test_1.php",
data: {'data':dataString},
type: "POST",
cache: false,
success: function(response){
alert("ok");
$('#test').html(response);
}
});
})
})
</script>
在您的html 中
<a href="javascript:void(0);">Click Me</a>
<div id="test"></div>
相关文章:
- 如何在Javascript中解析AJAX数组的特定部分
- 访问$.ajax()函数中的两个不同数组
- 作为一个二维数组,从ajax接收
- 如何在不使用ajax的情况下将pair值添加到数组并发送到django中的视图
- 将数组从ajax传递到python(Tornado)
- ajax成功地将数组中的数据放入表中各自的输入中
- jQuery Ajax数组序列化错误
- AJAX jquery json将数组发送到php
- 如何显示从Ajax请求返回的数组.使用Yii2
- 后关联数组使用jquery ajax
- 将ajax数组缓冲区响应绘制到画布中
- 使用Javascript数组或JSON来存储AJAX请求的返回值,以备将来使用
- 通过iron-ajax初始化对象数组(链接到caller's元素的响应)
- Ajax数组只返回1个值
- ajax数组上的PHP序列化不起作用
- 如何调用php json编码传递的ajax数组?zend框架2
- 我应该将php json编码转换为Ajax数组,第一次对我来说很难理解
- 通过JSON AJAX数组访问数据->对象
- 如何创建一个ajax数组和修改它没有回调函数
- 如何使用 Java 模拟 $.ajax 数组 POST 请求