2

ボタンを含む li を動的に追加すると、次のように追加するとボタンが正しくレンダリングされます。

$($ul).append( $li ).trigger('create');
$($ul).listview( "refresh" );
$($ul).trigger( "updatelayout" );

しかし、ul の最初の項目の後にボタン付きの li を追加する必要があります。これにより、li が正しい位置に追加されますが、ボタンが正しくレンダリングされません。

$($ul).eq(0).after($( $li )).trigger('create');
$($ul).listview( "refresh" );
$($ul).trigger( "updatelayout" );

私は完全に困惑し、何か提案をいただければ幸いです!!!

私の質問を明確にしてください (これが役立つことを願っています): li を追加するだけでボタンが正しくレンダリングされ、li を ul の特定の位置に追加しようとすると正しくレンダリングされないのはなぜですか?

挿入後のボタンの html は次のとおりです。

<button class="deleteLiRadio" data-inline="true" data-mini="true" data-shadow="false" data-iconpos="notext" data-icon="delete">Button</button>
4

1 に答える 1

2

あなたの問題は、実際にのli外側を追加していることだと思いますul

代わり$($ul).eq(0)$ul.find('li')

たとえば、次のコードはあなたが望むことをするはずです

  var $ul = $('#myList');
    var $li = $('<li><button class="deleteLiRadio" data-role="button" data-inline="true" data-mini="true" data-shadow="false" data-iconpos="notext" data-icon="delete">Button</button></li>');
    $ul.find('li').eq(0).after($li);
    $ul.trigger('create').listview( "refresh" );
    $ul.trigger( "updatelayout" );

http://jsfiddle.net/rbAc9/1/

于 2013-08-02T22:45:03.880 に答える