账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    ajax返回的数组为什么提示undefined?
    34
    0

    试了两天了都没解决!哪位大神可以帮忙解决下,急,在线等!ajax返回的数组为什么alert 为undefined?注:readComment.php是确定可以和数据库链接并取到正确的结果数组的,其他方法试过,用了ajax就不行了。。。

    Ajax function:

    $('#getComments').click(function () {
    var recipe=document.title;
    var session_username = '<%=session.getAttribute("username")%>';

    $.ajax({
    type: 'POST',
    url: "readComment.php",
    data: {"recipe": recipe},
    dataType: 'json',

    success: function(data){

                                             alert (JSON.stringify(data).username);// alert undefined!
    

    },

    error:function(){
    alert("error");
    }
    });

    });

    php file: readComment:

    <?php
    /**

    • Make sure the user can read the comments.

    */
    require_once './resources/fragments/start.php';
    use TastyRecipesControllerSessionManager;
    $recipe = $_POST["recipe"];

    $controller = SessionManager::getController();
    $result_array = $controller->getComments($recipe);

    echo json_encode($result_array);

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 我在m城有车 普通会员 1楼

      当使用AJAX请求返回的数组时,可能会出现undefined的错误,这可能是因为以下原因:

      1. 服务器返回的数组为空:如果你的AJAX请求是获取服务器上的某个资源,但服务器没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的数据不为空。

      2. 服务器返回的数组包含错误:如果你的AJAX请求返回的是服务器返回的错误信息,而不是期望的数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的错误信息不是undefined

      3. AJAX请求返回的数组包含了异步操作的结果:如果你的AJAX请求返回了一个异步操作的结果,但这个结果没有被正确地处理,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保异步操作的结果没有被错误地处理。

      4. AJAX请求没有返回任何数据:如果你的AJAX请求没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保AJAX请求没有返回任何数据。

      5. JSON格式不正确:如果你的JSON格式不正确,那么返回的数组将会是undefined。这种情况下,你需要检查你的JSON数据,确保它的格式正确。

      解决这些问题的方法可能包括使用异常处理来捕获undefined错误,使用JSON.parse()函数将JSON字符串转换为JavaScript对象,或者使用try/catch语句来处理可能的错误。

    • 六遥之 普通会员 2楼

      当使用AJAX请求返回的数组时,可能会出现undefined的错误,这可能是因为以下原因:

      1. 服务器返回的数组为空:如果你的AJAX请求是获取服务器上的某个资源,但服务器没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的数据不为空。

      2. 服务器返回的数组包含错误:如果你的AJAX请求返回的是服务器返回的错误信息,而不是期望的数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的错误信息不是undefined

      3. AJAX请求返回的数组包含了异步操作的结果:如果你的AJAX请求返回了一个异步操作的结果,但这个结果没有被正确地处理,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保异步操作的结果没有被错误地处理。

      4. AJAX请求没有返回任何数据:如果你的AJAX请求没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保AJAX请求没有返回任何数据。

      5. JSON格式不正确:如果你的JSON格式不正确,那么返回的数组将会是undefined。这种情况下,你需要检查你的JSON数据,确保它的格式正确。

      解决这些问题的方法可能包括使用异常处理来捕获undefined错误,使用JSON.parse()函数将JSON字符串转换为JavaScript对象,或者使用try/catch语句来处理可能的错误。

    • 落花笑彷徨ㄟ 普通会员 3楼

      当使用AJAX请求返回的数组时,可能会出现undefined的错误,这可能是因为以下原因:

      1. 服务器返回的数组为空:如果你的AJAX请求是获取服务器上的某个资源,但服务器没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的数据不为空。

      2. 服务器返回的数组包含错误:如果你的AJAX请求返回的是服务器返回的错误信息,而不是期望的数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保服务器返回的错误信息不是undefined

      3. AJAX请求返回的数组包含了异步操作的结果:如果你的AJAX请求返回了一个异步操作的结果,但这个结果没有被正确地处理,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保异步操作的结果没有被错误地处理。

      4. AJAX请求没有返回任何数据:如果你的AJAX请求没有返回任何数据,那么返回的数组将会是undefined。这种情况下,你可以在你的代码中添加一个检查,确保AJAX请求没有返回任何数据。

      5. JSON格式不正确:如果你的JSON格式不正确,那么返回的数组将会是undefined。这种情况下,你需要检查你的JSON数据,确保它的格式正确。

      解决这些问题的方法可能包括使用异常处理来捕获undefined错误,使用JSON.parse()函数将JSON字符串转换为JavaScript对象,或者使用try/catch语句来处理可能的错误。

    更多回答
    扫一扫访问手机版