放入选项JavaScript的结果选择

问题描述:

嗨我这里有一个脚本:放入选项JavaScript的结果选择

function getFiles(){ 
    var query = ""; 
    if (ifShowSharedFiles()) { 
     $(".button-opt").hide(); 
     query = (FOLDER_ID == "root") ? "trashed=false and sharedWithMe" : "trashed=false and '" + FOLDER_ID + "' in parents"; 
     if (FOLDER_ID != "root" && FOLDER_PERMISSION == "true") { 
      $(".button-opt").show(); 
     } 
    }else{ 
     $(".button-opt").show(); 
     query = "trashed=false and '" + FOLDER_ID + "' in parents"; 
    } 
    var request = gapi.client.drive.files.list({ 
     'maxResults': NO_OF_FILES, 
     'q': query 
    }); 

    request.execute(function (resp) { 
     if (!resp.error) { 
      showUserInfo(); 
      DRIVE_FILES = resp.items; 
      buildFiles(); 

       for(var i = 0; i < resp.items.length; i++){ 
         console.log(resp.items[i].title) 
       } 
     }else{ 
      showErrorMessage("Error: " + resp.error.message); 
     } 
    }); 
} 

的执行console.log给我我需要的文件夹的名称。

如何将console.log放入选项select中。

如果我运行此的GetFiles中的console.log结果是:

Name 
Age 
Place 

有了这些数据,我需要用3选项值选择框。

+1

的【什么是从与jQuery的阵列选项添加到选择的最佳方式?(http://*.com/questions/170986/what-is-可能的复制最好的方式来添加选项从数组中选择与jquery) –

要做到这一点,你可以使用map()使用append()将其添加到所需的select元素之前建立option元素的字符串数组。试试这个:

// example response data 
 
var resp = { 
 
    items: [{ 
 
    title: 'Foo', 
 
    Id: '1321a34ds' 
 
    }, { 
 
    title: 'Bar', 
 
    Id: 'aaaaaaa' 
 
    }, { 
 
    title: 'Fizz', 
 
    Id: 'bbbbbbb' 
 
    }, { 
 
    title: 'Buzz', 
 
    Id: 'ccccc' 
 
    }] 
 
} 
 

 
var options = resp.items.map(function(item) { 
 
    return '<option value="' + item.Id + '">' + item.title + '</option>'; 
 
}); 
 
$('select').append(options.join(''));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select></select>

+0

这工作!我会在10分钟内接受答案(我必须等待) –

+0

1个更多的问题:我有现在的标题,但我想要一个选项val,它必须来自resp.id –

+0

示例项目:[{ title:'Foo ',Id:“1321a34ds”,选项值必须是1321a34ds –

只是写在下面的代码替换此

for(var i = 0; i < resp.items.length; i++){ 

console.log(resp.items[i].title); 



} 

。这将解决您的问题

var listoption,compllist;   

for(var i = 0; i < resp.items.length; i++){    

var title = resp.items[i].title; 

listoption += '<option id='+title+' value='+title+'>'+title+'</option>'; 
      } 
      compllist = "<select name='list' id='list'><option>Select</option>"+listoption+"</select>"; 
      $("#container").html(compllist);