2017-03-02 68 views
0

嗨,大家好我想獲取$ .each中的json數組的值,並將值傳遞給另一個ajax值從控制器發送到查看,但無法使用$ .each函數顯示值。讓我告訴你我的代碼來說明是什麼問題

function getfriend_requests() 
    { 
    var id=$('.id_data').attr('value'); 

    jQuery.ajax({ 
        type:'POST', 
        url:'<?php echo base_url("user/getallfriends"); ?>', 
        data:{id:id}, 
        dataType:'json', 
        success:function(data) 
        { 
         console.log(data); 
          var ParsedObject = JSON.stringify(data); 
         var friend_request_data= $.parseJSON(ParsedObject); 

          $.each(friend_request_data, function(key,data) 
          { 

           var uname=data.uname; 
           var senders_id=data.senders_id; 
           alert(senders_id); 
           var recievers_id=data.recievers_id; 
           var request_status=data.request_status; 
           alert(recievers_id); 
           alert(uname); 
           jQuery.ajax({ 
          type:'POST', 
          url:'<?php echo base_url("user/get_friends_Data"); ?>', 
          data:{senders_id:senders_id,recievers_id:recievers_id}, 
          dataType:'json', 
          success:function(data) 
          { 
            console.log(data); 
            var ParsedObject = JSON.stringify(data); 
            var sender_values = $.parseJSON(ParsedObject); 
           // var senders_name=sender_values.sender_data; 
           // alert(senders_name); 
           var id=$('.id_data').attr('value'); 
            $.each(sender_values, function(key,data) 
         { 
         var uname = data.uname; 
         var senders_id=data.id; 

         alert(uname); 
         alert(senders_id); 
         // $('.senders_div').attr('senders_id', $senders_id); 
         // if(senders_id==id) 
         // { 

         // } 
         // else{ 
         // if(uname){ 
         //  alert(request_status); 
         //  if(request_status=='pending') 
         //  { 
         //  //alert('hello'); 
         //  }else{ 
         //  //alert('data'); 
         //  } 

          $('.friends_sidebar').append('<div>'+uname +'</div>'); 




         }); 
          //  $.each(sender_values,function,(key,data) 
          //  { 
          //   var uname = data.uname; 
          //   if(uname){ 
          // $('.friends_sidebar').html('<div>'+uname +'has sent you a request</div>'); 

          // } 
          //  }); 
           } 
         }); 
          }); 
        } 
       }); 
    } 

now in this code when i try to use 'friend_request_data' it shows undefined alerting values all shows undefined. so i cant send the values to the second ajax that i am using 
let me also show you the controller 

     public function getallfriends() 
    { 
     $id=$this->input->post('id'); 
     $this->load->model('Pmodel'); 
     $data['senders']=$this->Pmodel->get_all_user_friends_sender($id); 


     $data['recievers']=$this->Pmodel->get_all_user_friends_reciever($id); 

     echo json_encode($data); 
    } 
    public function get_friends_Data() 
    { 
     $senders_id=$this->input->post('senders_id'); 
     $user_id = $this->session->userdata('user_id'); 
     $recievers_id=$this->input->post('recievers_id'); 
     $this->load->model('Pmodel'); 

    if($user_id==$senders_id) 
    { 

    }else{ 
     $userdata['senders_data']=$this->Pmodel->getUserdata($senders_id); 

    } 

    if($user_id==$recievers_id) 
    { 

    } 
    else{ 
     $userdata['recievers_data']=$this->Pmodel->getUserdata($recievers_id); 
    } 

    echo json_encode($userdata); 
    } 
    } 

此代碼工作完全地作爲回聲json_encode($用戶數據),所有值都在Firebug的控制檯被顯示。讓我給你看一些更好理解的形象。

ajax showing null value get_all_friends ajax second function

可以請你告訴我,我錯了?

+0

你能解釋一下這個部分? 'var ParsedObject = JSON.stringify(data); var friend_request_data = $ .parseJSON(ParsedObject);'如果你必須字符串化,然後重新解析,有些東西似乎是錯誤的。 – Shilly

回答

0

爲什麼使用$each迭代數據?

您可以使用一個簡單的for -loop代替,使JSON.stringifyJSON.parse可以去掉

+0

如果我不分析值,它只會顯示我未定義或對象對象。 –

+0

我認爲這個問題可能會拉到查詢,因爲當我返回$ query-> result_array它顯示undefined,否則,如果我使用$ query-> row_array它返回單行不是整個數組@DagosPodaru的 –

+0

這是張貼爲答案,但它並不試圖回答這個問題。它應該可能是編輯,評論,另一個問題,或者完全刪除。 –

相關問題