2

私はこのようなHTMLを持っています:

<dl>
    <dt class="tab-title">Title</dt>
    <dd class="tab-content">Ain't Life Grand</dd>
</dl>

JS後の最終的なHTMLは次のようになる必要があります。

<dl>
    <dt class="tab-title">Title</dt>
    <dd class="tab-content">Ain't Life Grand</dd>
    <dt class="tab-title">Another Title</dt>
    <dd class="tab-content">Ain't Life Grand again</dd>
    <dt class="tab-title">How'about Another</dt>
    <dd class="tab-content">Ain't Life Grand last!</dd>
</dl>

私がこれまでに持っているJSは次のとおりです。

<script type="text/javascript">
    var arrayData = {
        titletwo: {
            title: 'Another Title',
            html: 'Ain\'t Life Grand again'
        },
        titlethree: {
            title: 'How\'about Another',
            html: 'Ain\'t Life Grand last!'
        }
    }
    for (var key in arrayData) {
        var obj = arrayData[key];
            $$('dl').insert('<dt class="tab-title">'.obj['title'].'</dt>');
        $$('dl').insert('<dd class="tab-content">'.obj['title'].'</dd>');
    }
</script>

それは何もしていないようです。ピッチインしてください!

4

1 に答える 1

0

あなたのアプローチは素晴らしいです、それはあなたが何か間違ったことをしているこれらの2つの行にちょうどあります:

$$('dl').insert('<dt class="tab-title">'.obj['title'].'</dt>');
$$('dl').insert('<dd class="tab-content">'.obj['title'].'</dd>');

このため、PHPから来たと言えます。.連結は行いません。+代わりに使用してください。

$$('dl').insert('<dt class="tab-title">' + obj['title'] + '</dt>');
$$('dl').insert('<dd class="tab-content">' + obj['title'] + '</dd>');

これはエラーではありませんが、優先的なスタイルの単純な問題です。ドット演算子を使用して、.次のようにオブジェクトリテラルからキーと値のペアをクエリします(以下は同等です)。

$$('dl').insert('<dt class="tab-title">' + obj.title + '</dt>');

obj[ "..." ][これらの値を動的にクエリする場合は、角かっこ表記を使用してください。]

于 2012-11-10T12:52:31.530 に答える