2017-02-12 59 views
1

我使用以下代碼獲取使用AJAX後的OneDrive和子文件夾的根文件夾列表。AJAX生成的訂單列表li id不通過數據發佈

$(document).ready(function(){ 

    $(".driveFolders li").click(function(){ 
     var folderId = $(this).attr("id"); 
     var objlst= $(this); 
     var request; 
     request = $.ajax({ 
      url: url, 
      method: "POST", 
      data: {'id': folderId}, 
      ContentType: 'application/json' 
     }); 

     request.done(function(response) { 
      var result = jQuery.parseJSON(response); 
      var html=""; 
      for(var i = 0, l = result.length; i < l; i++){ 
       var subFolderID = result[i].id; 
       html += "<li id="+subFolderID+"'>" + result[i].name + "</li>"; 

      } 
      $("#childern").html(html); 
     }); 
    }) 
}) 

它返回所有文件和文件夾的列表。現在,我得到了AJAX產生li元素的數據,我再次使用下面的代碼發送一個AJAX請求:

​​

它返回一個錯誤

文件夾不存在。

手動發送文件夾ID時,我收到所有文件。這裏是我的控制器代碼:

public function GetFolderContent(){ 

    $this->load->library('STOneDrive'); 

    if (!$this->stonedrive->is_Connected) { 
     $refreshToken = ""; 
     $this->stonedrive->Reconnect($refreshToken); 
    } 

    $contents = $this->stonedrive->LoadRootFolders(urldecode($this->input->post('id'))); 
    $result = array(); 
    foreach($contents as $content){ 
     array_push($result,array('id' => $content->getId(),'name'=>$content->getName(),'size'=> '')); 
    } 

    echo json_encode($result); 
} 

回答

0

有錯誤追加ID李標籤: 變化

html += "<li id="+subFolderID+"'>" + result[i].name + "</li>"; 

到以下

html += "<li id='"+subFolderID+"'>" + result[i].name + "</li>"; 
+0

感謝糾正現在工作正常。現在我需要一個樹視圖文件夾和子文件夾向我建議我如何讓我的樹任何想法exampe –

0

在Ajax代碼法類型更換和內容類型數據類型