我在处理来自服务器的数据时遇到问题,请参阅下面的代码:
PHP
echo json_encode(array("toshow"=>"<span class='text'><img src='greencheck.png'/>"));
javascript
$('#data').ajaxForm({
dataType: 'json',
success: function(data){
if(data.error == 1){
$('#preview').html("<span class='text'><img src='close.png'/>"+data.filename+" File exsist ..</span>");
}else{
$('.first').after(data.toshow);
}
}
}).submit();
问题是当我从服务器发送数据为{'data'=&gt; someData}时,我没有问题..当我在javascript中发送任何html标签如{'data'=>"<span>some data</span>"}
成功函数时没有处理任何事情所以成功=失败..
案例1:从服务器示例发送json数据,{'error'=&gt; 1,'msg'=&gt;文件存在},在这种情况下,每件事情都可以。
案例2:从服务器示例发送json数据,{'toshow'=&gt; linkdatta ... etc},所以如果在json问题中添加任何html标记,那么启动成功函数根本无法正常工作
答案 0 :(得分:1)
在你的php文件中将content-type设置为json:
header('Content-type: application/json');
echo json_encode(.........);
答案 1 :(得分:0)
success: function(data){
var temp = jQuery.parseJSON(data);
if(temp.error == 1){
}
}