我需要一个以下给定功能的帮助。函数mainApp.php
返回1,但执行Else
语句的success IF
部分。我对表达式function(html,msg)
的正确性表示怀疑。如何解决这个问题?
更新(工作代码):
function click_function_ps() {
$.ajax({
url: 'callpage.php?page=optim/mainApp.php',
data: 'myParam='+$('#myParam').val(),
dataType: 'json',
success: function(output){
if(output.msg === 1){
$('#myContainer').html(output.html);
} else {
$dialog.dialog('open');
return false;
}
}
});
}
mainApp.php
$html_code = '<table width="100%">
<tr>
<td width="100%">
<div class="scrollbar" id="chart"><img class="displayed" src="ganttchart.php"></div>
</td>
</tr>
</table>';
echo json_encode(array('msg' => 1, 'html' => $html_code));
答案 0 :(得分:3)
返回的响应位于第一个参数中。第二个通常不是很有趣。
success(data, textStatus, jqXHR)
请求成功时要调用的函数。该函数传递三个参数:从服务器返回的数据,根据dataType参数格式化;描述状态的字符串;和jqXHR对象。
我还建议您将html
重命名为更有意义的内容,例如data
或response
,并将dataType: 'json'
添加到您的ajax参数中。然后让您的PHP脚本返回json_encode(array('msg' => 1, 'html' => $your_html_code))
并在您的函数中使用data.msg
和data.html
。