如何创建一个下拉列表来使用jsonString对象

时间:2015-11-22 09:42:47

标签: javascript json

我从后端获得了JSON String对象。我的Json String对象包含id和en_name.Now我想在我的下拉列表中只填充en_name。

我收到此错误:

SyntaxError:JSON.parse:JSON数据第1行第1列的意外字符..

这是我的JSON字符串对象。

[{"id":2773,"environments_name":"ABC-DEF"},{"id":2770,"environments_name":"ABCS- - DSDSDSFR"
        },{"id":2774,"environments_name":"GFDSS - GGGDFF"}] .



        //this my ajax call 
        <script>
            $(document).ready(function() {
                $("#customerDetails").change(function() {
                    var value1 = $('#customerDetails :selected').text();
                    $.ajax({
                        type : 'GET',
                        url : 'environments',
                        data : {
                            selectedcustomername : value1
                        },
                        success : function(result) {
                            getEnvNames(result);
                       }
                    });
                });
            });
        </script>

    //this is my function 
        <script language="JavaScript">
        function getEnvNames(result){
            alert("inside the function");
            var item= result;
            alert("rowwwww>>>>"+row);
            var select="<select id='environmentName'>";
            for(var i=0,i=row.length;i>1;i++){
                 var item=JSON.parse(row[i]);
                alert("for loop");
                 var item=row[i];

//这里我得到的项目值未定义。

                  alert("itemmmmmmmm>>>"+item);
                  alert("row[i],,,,,,>>>"+row[i]);
                  select+="<option value='"+item.id+"'>"+item.name+"</option>";
                } 
                select+="</select>";

                document.write(select);
        }
        </script>

        This is my JSP

        <td aligh="right">Select Environemnt : <select
                            name="environmentName" id="environmentName">
                            <option selected="selected" disabled="disabled">Select An Environment</option>
                            </select></td></tr>

1 个答案:

答案 0 :(得分:0)

getEnvNames(result);更改为getEnvNames(JSON.parse(result));

从处理循环中删除var item=JSON.parse(row[i]);