【问题标题】:Populate select option tag with dynamic data from xml link使用来自 xml 链接的动态数据填充选择选项标签
【发布时间】:2019-11-20 13:36:21
【问题描述】:

我需要使用从 xml 链接获得的动态数据填充选择选项标签。

您好,我正在使用 sharepoint,我需要为我的问题找到解决方案。 我有一个空的选择标签,我需要用来自 xml 链接的动态数据填充它。 https://scontent.ftun3-1.fna.fbcdn.net/v/t1.15752-9/66477621_1241321552715420_782504330790961152_n.png?_nc_cat=103&_nc_oc=AQlt1rE9uaqZ1xQ5hiMymOPlFsedDuxcpBPMP9C_RTgYJ6s8P5ekStaUIaC5MTiZyOY&_nc_ht=scontent.ftun3-1.fna&oh=bbda50d7782545a433025406a28b2396&oe=5DBECD7B

图片中的数据是静态类型的,xml链接中的列名是<d:ProjectOwnerName>,但是我希望它是动态的。 从这段代码开始,我该怎么做?

$.ajax({url: _spPageContextInfo.siteAbsoluteUrl + "/_api/ProjectData/[en-US]/Projects",                           
                                        method: "GET",
                                        dataType: "json",
                                        headers: {Accept: "application/json;odata=verbose"},       
                                        success: function(data) {     
                                        var dataResults = data.d.results;

               var listItemInfo ="";
                $.each(dataResults, function(key, value) 
                {

这是 html 部分:

<select style="color:black; font-weight:bold;" id="mylist" onchange="myFunction()">
    <option></option>
    </select>

【问题讨论】:

标签: javascript json dynamic drop-down-menu html-select


【解决方案1】:

如果您的数据是xml,则使用dataType:'xml'。可能是这样的。

$.ajax({url: _spPageContextInfo.siteAbsoluteUrl + "/_api/ProjectData/[en-US]/Projects",                           
    method: "GET",
    dataType: "xml",//or json if xml is wrapped in json
    //headers: {Accept: "text/xml"},//make sure you need this       
    success: function(data) { 
        //check which is your desired XML
        console.log(data);
        console.log(data.d);
        console.log(data.d.results);

        //suppose it is data.d.results
        var dataResults = data.d.results;
        var list = $('#mylist');
        $(dataResults).find('d\\:ProjectOwnerName')//this is how access namespaced property
          .each(function(){
            list.append($('<option />').text(this.innerText));
          });//each
       }//success
});//$.ajax

【讨论】:

    猜你喜欢
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 2012-10-09
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多