使用javascript制作类似JSON的结构

时间:2013-07-01 19:34:17

标签: javascript html json

我知道我可以使用JSON来实现这一点,但我必须这样做。 我有一个谷歌地图,我从我的数据库(在C#中)拉取纬度坐标和经度坐标。 之后我将所有这些信息添加到HTML中的ol(有序列表)中。 现在我必须将它们两两拉出来并制作一个类似这样的结构:

stores1 = [{

            "lat": "12312.123",
            "lng": "2.21312",
            "state": "Potato"

        }, {

            "lat": "12321.11",
            "lng": "1.1",
            "state": "Potato2"


        }, {

            "lat": "2.32131",
            "lng": "4.4",
            "state": "Potato"

        }

        ]

我正在使用此代码执行此操作:

var stores=[];
    //test list
    var listTMP = document.getElementById("listDealers");
    var list = listTMP.getElementsByTagName("li");
    for (var i = 0; i < list.length-1; i++) {
        stores.push(
            {
                lat: list[i].innerText,
                lng: list[i + 1].innerText,
                state: "potato"
            }
            );
        i = i + 1;
    }

i = i + 1是因为我以下列形式添加li(列表项):

  • longitude1
  • latitude1
  • |
  • longitude2
  • latitude2
  • ....所以前两个是在一起,然后是接下来的两个,依此类推...... 但是我的地图没有显示坐标存在问题。如果我添加静态坐标,整个JavaScript都会起作用,但我的问题是我需要像这样动态添加它们。 有帮助吗?我在哪里弄错了?

    这是c#代码:( getList是我获取数据的函数)

    string sqlL = "Select * from retailers";
    string[] atrrL = { "LATITUDE" ,"LONGITUDE"}; 
    List<String> tmpL = getList(sqlL, atrrL); 
    for (int i = 0; i < tmpL.Count; i++) { 
        listDealers.InnerHtml +=( "<li>" + tmpL[i].ToString().Trim() + "</li>");
    }
    

    0 个答案:

    没有答案