代码之家  ›  专栏  ›  技术社区  ›  wmitchell

javascript/jquery使用变量引用json/xml对象的不同部分

  •  0
  • wmitchell  · 技术社区  · 14 年前

    我想创建一个函数来处理以下嵌套格式的JSON。钥匙会变的 条件-可以是任何东西,子条件键可以是任何东西,但结构保持不变。

      populatePageEditorMenu: function (jsonPath, topLevel, childLevel){  
    

    打电话给

     populatePageEditorMenu("http://localhost/data/conditions.json", 'conditions', 'subcondition' );
    

    这允许我指向具有相同结构的不同键的不同位json,但是我似乎无法配置子条件键我的语法不太正确。

    使用以下JSON

    {
        "conditions": [
            {
                "condition": [
                    {
                        "name": "TOP",
                        "subcondition": [
                            {
                                "name": "CHILD1"
                            }
                        ]
                    }
                ]
            }
        ]
    }
    

    我可以用方括号引用顶层条件。。

    $.getJSON(jsonPath,
                        function(data) {
                            $.each(data[topLevel], function(topentryIndex, entry) {
    

    有问题的部分似乎不起作用,在此之前我使用参数化使用了以下。。。

    $.each(this.subcondition, function(entryIndex, entry) { ....
    

    我在jsfiddle上发布了一个更完整的版本JSON可以在CSS视图中看到。

    参考- http://jsfiddle.net/wmitchell/QRkxd/

    1 回复  |  直到 8 年前
        1
  •  0
  •   wmitchell    14 年前

    谢谢你看着这些家伙道歉我可能很难解释我在追求什么。

    基本上,我想知道是否可以使用变量来表示我试图在对象中访问的字段

    我可以用像

    $.each(data[topLevel], function(topentryIndex, entry) {
    

    其中toplevel是对象中字段的字符串表示

     this["variablename"]
    

    去做它

    谢谢你看这个。我在json中也犯了一些错误,这可能没有帮助。 不确定我是该留下这篇文章还是删除它。