Php 在jquery请求中检索json数据成功
我有一个有趣的问题: 我得到的json数据如下:Php 在jquery请求中检索json数据成功,php,jquery,json,types,Php,Jquery,Json,Types,我有一个有趣的问题: 我得到的json数据如下: {"answer0":"IMG_0793.JPG not allowed file size","answer1":"sajty-mira.jpg uploaded","answer2":"\u0433 \u0432\u0441.txt unsupported File type"} 使用jquery$.ajax 给你 success: function(resp) { var numFiles = $("#file").get(0).file
{"answer0":"IMG_0793.JPG not allowed file size","answer1":"sajty-mira.jpg uploaded","answer2":"\u0433
\u0432\u0441.txt unsupported File type"}
使用jquery$.ajax
给你
success: function(resp)
{
var numFiles = $("#file").get(0).files.length;
for(i=0; i < numFiles; i++){
var answ = "resp.answer"+i;
$('#response').append(answ).css('color', 'black').html('<br>');
}
}
我可以用php实现这一点
<?php
for ($i = 0; $i < $numFiles; $i++){
echo"
$('#response').append(resp.answer".$i.").css('color', 'black').append('<br>');
";
}
?>
您不能以这种方式使用append()
(仅追加字符串):
$('#response').append(answ).css('color','black').html('
');
Inside append应具有有效的html标记:
$('#response').append('<div>' + answ + '</div>').css('color', 'black').html('<br>');
$('#response').append(''+answ+'').css('color','black').html('
');
您需要使用
var response = $.parseJSON(resp);
然后您可以使用响应变量。您可以使用eval()函数来实现这一点
如下图所示:
resp = {"answer0":"IMG_0793.JPG not allowed file size","answer1":"sajty-mira.jpg uploaded","answer2":"\u0433\u0432\u0441.txt unsupported File type"}
var i = 1;
var answ = eval("resp.answer"+i);
console.log('answ:'+answ); // This will print answ:sajty-mira.jpg uploaded
我认为您错误地混合了服务器端和客户端逻辑。像这样?var响应=$.parseJSON(resp);对于(i=0;i');}不工作var answer=response.answer+i$('#response').append(answer).css('color','black').append('
');只需在解析JSON之前和之后尝试console.log(response)
,它们不允许我投票!需要15个声望!您应该避免使用eval来处理来自外部的东西,因为它会打开XSSvulnerabilities@alexis,同意您的看法,但这里的输入不是来自外部,而是结果json。eval可以根据您打算使用它的情况来使用。但可以避免使用任何已发布值等进行处理
var response = $.parseJSON(resp);
resp = {"answer0":"IMG_0793.JPG not allowed file size","answer1":"sajty-mira.jpg uploaded","answer2":"\u0433\u0432\u0441.txt unsupported File type"}
var i = 1;
var answ = eval("resp.answer"+i);
console.log('answ:'+answ); // This will print answ:sajty-mira.jpg uploaded