1

私はamdの検索に取り組んでいます。次のコード行があります。

 $('#searchResults').add($('li:last').load(url + '&' + urlExtra));

これにより、コンテンツを含む10個のliタグが追加されますが、ulに追加されるのではなく、最後のliがロードされたリストにネストされます。明確にするために、私はこの結果が欲しいです:

<ul>
<li>already in list</li>
<li>already in list</li>
<li>already in list</li>
<li>already in list</li>
<li>new li from load</li>
<li>new li from load</li>
</ul>

しかし、私はこれを取得しています:

    <ul>
    <li>already in list</li>
    <li>already in list</li>
    <li>already in list</li>
    <li>already in list
       <li>new li from load</li>
       <li>new li from load</li>
    </li>
    </ul>

正しい方向へのポインタをいただければ幸いです。

レイチェルよろしくお願いします

4

5 に答える 5

3

jQuery.get()代わりに使用してください:

$.get(url + '&' + urlExtra,function(data) {
   $('#searchResults').append('<li>' + data + '</li>');
})

#searchResults私の場合はulです。これは、の末尾に.append()新しいものを追加するために使用しますliul

于 2012-06-28T08:43:35.993 に答える
2

jQueryのload()関数-親のコンテンツをダウンロードしたコンテンツに置き換えます。コードでは、load呼び出しの親は最後liであり、ではありませんul。必要なのは、コンテンツを置き換えるのではなく、親にコンテンツを追加するものです。したがって、理論的には、load()それを行うことはできません。.ajax()またはのようなものを使用.get()してコンテンツを取得し、それを親に追加しますul

于 2012-06-28T08:45:13.557 に答える
0

最後のliに追加する代わりに、ul自体に追加してみませんか?

于 2012-06-28T08:40:21.450 に答える
0

新しい「li」をulに追加してみてください。

$('#searchResults ul').append("<li>asdasdasd</li>");
于 2012-06-28T08:41:36.467 に答える
0

多分試してみてください:

$.get('foo.html', function(data) {
    $('#results').append(data);
});

HTML:

<ul id="results">
    <li>Item 1</li>
</ul>

foo.html:

<li>New item</li>

結果:

<ul id="results">
<li>Item 1</li>
<li>New item</li>
</ul>
于 2012-06-28T08:55:37.483 に答える