Javascript 如何避免AJAX成功函数中未定义的错误消息

Javascript 如何避免AJAX成功函数中未定义的错误消息,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,有时,未定义从服务器返回的数据,导致“我的页面”上出现以下内容: <p id="element">undefined</p> PHP处理程序: success: function( data ) { $( '#element' ).text( data.message ) } $response = array() // Some logic which may assign data to $response['message'] echo json_e

有时,未定义从服务器返回的数据,导致“我的页面”上出现以下内容:

<p id="element">undefined</p>
PHP处理程序:

success: function( data ) {
    $( '#element' ).text( data.message )
}
$response = array()

// Some logic which may assign data to $response['message']

echo json_encode( $response );
die;

有没有办法抑制这种未定义的消息?

根据您的需要,只有在提供消息时才能显示消息

success: function( data ) {

    if( data.message !== undefined )
        $( '#element' ).text( data.message )

}
if (data.message) {
    $('#element').text(data.message)
}
或者,如果服务器未返回任何内容(或空字符串),则可能显示默认消息:


根据您的需要,您只能在提供消息的情况下显示消息

if (data.message) {
    $('#element').text(data.message)
}
或者,如果服务器未返回任何内容(或空字符串),则可能显示默认消息:


您必须确保响应的格式为
json
您必须确保响应的格式为
json
它永远不会工作,因为
undefined
类型不等于字符串“undefined”。您可能希望
如果(type of data.message!=“undefined”){}
@dsfq,或者(data.message!==undefined)可以工作?是的,我不知道为什么我会混淆data.message的类型始终是字符串…它永远不会工作,因为
undefined
type不等于字符串“undefined”。您可能希望
如果(type of data.message!=“undefined”){}
@dsfq,或者(data.message!==undefined)可以工作?是的,我不知道为什么我会混淆data.message的类型始终是字符串。。。