-1

このJSONオブジェクトを例として取り上げます。

"pages": {
    "start": {
        ....
    },
    "page1": {
        ....
    },
    "page2": {
        ....
    },
    ....
}

ここで、jQuery ajax関数を使用して、上記のJSONオブジェクトをロードし、その結果を変数に保存します。ここまでは順調ですね。それから私はこのようないくつかのhtmlを持っています:

<div class="container" page-data="start">
    <h2></h2>
</div>    
<div class="container" page-data="start">
    <h2></h2>
</div>    
<div class="container" page-data="page1">
    <h2></h2>
</div>    
<div class="container" page-data="page2">
    <h2></h2>
</div>

ここで、JSONデータを使用するためにこの関数を作成しました。

function createContent(el) {
    var page, $obj;
    page = [];
    $obj = el;
    $obj.each(function(index) {
        page[index] = $(this).attr('page-data');
        $(this).find('h2').html(jsonData.pages. + page[index] + .value);
    });
}
//here I start the function
$(document).ready(function(){
    createContent($('.container'));
});

動作していないのは、上記の関数のこの部分です。

$(this).find('h2').html(jsonData.pages. + page[index] + .value);

オブジェクトの概念は単なる文字列値ではないため、これは非常に明白です。さて、これを有効なオブジェクト表記に組み合わせる方法はありますか?

4

1 に答える 1

3

表記を使用して[]、オブジェクトメンバーにアクセスします。

...
$(this).find('h2').html(jsonData.pages[page[index]].value);
...
于 2013-01-22T18:11:33.777 に答える