0

html に複数の div があり、div と p の間に要素を追加する必要があります

<div class="ui-state-error ui-corner-all">
 <p><b>Reversed</b></p>
</div>

私が欲しいのは、2つの間にスパンを追加するためのhtmlです

<div class="ui-state-error ui-corner-all">
<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>
 <p><b>Reversed</b></p>
</div>

しかし、私が試した関数は、クラスごとに一度これを行うことができませんでした.13個のクラスがある場合、セレクターまたはeach()、insertBefore( )、before()、after()など

これが私が試したもので、うまくいかなかった

 <script type="text/javascript">        
       $(function () {                 
html = '<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>';

           $('.ui-state-error').each(function(i){
                $('.ui-state-error').eq(i).before('p').append(html);
            });
        });
    </script>
4

3 に答える 3

3

これをやってみてください:

$(document).ready(function(){
    html = '<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>';
    $('.ui-state-error').prepend(html);
});

これがprependに関するドキュメントです

于 2012-07-27T15:01:47.200 に答える
1

これを試して、

ライブデモ

     $(function () {                 
html = '<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;">your span</span>';

           $('.ui-state-error').each(function(i){
                $(this).prepend(html);           
            });

        });​
于 2012-07-27T15:01:46.660 に答える
1

これはあなたのために働くかもしれません:

$(function(){ html = '<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>'; $(html).prependTo('.ui-state-error'); });

私の答えは PoulsQ のものと似ています。しかし、異なるのは、 $.prepend() は一致した 1 つの要素のみ (最初に一致した要素だと思います) であり、 $.prependTo() は一致したすべての要素の先頭に追加されることです。このルールは、append() と appendTo() にも適用されます。before() および insertBefore(); after() および insertAfter();

これがお役に立てば幸いです。

于 2012-07-27T15:23:14.393 に答える