0

アクセスできないphpスクリプトによって生成された11のdtがあります。以下の例。

<dt>
<span class="Required FormFieldRequired" style="visibility: visible">*</span> 
    <span class="FormFieldLabel">Email Address:</span>
</dt>

FormFieldLabel スパンに続くRequired スパンとそのすべてのコンテンツが必要です。Required span テキストは変更されず、ラベルの内容は変更されます。

$('span.FormFieldLabel').insertBefore( 'span.Required.FormFieldRequired' );機能しません。すべてを繰り返し、フォームを台無しにします。

読書は text() 関数の使用法を示唆していますが、それをどのように適用すべきかは示唆していません。

私は基本的に「A before B」を「B before A」に変更したいと考えています。

4

4 に答える 4

3

dtこれをやりたい場所が複数あると思います。だからあなたはこれを行う必要があります:

$('span.FormFieldLabel').each(function() {
    $(this).insertBefore( $(this).closest('dt').find('span.Required.FormFieldRequired') );
});
于 2013-03-20T14:14:28.157 に答える
1

これはどう:

$('span.FormFieldLabel').each(function() {
  $(this).insertBefore($(this).prev());
});

デモ

于 2013-03-20T14:15:15.120 に答える
0

これはあなたが望むものを手に入れますか?

$('.Required').remove().insertAfter('.FormFieldLabel')

実際の例: http://jsfiddle.net/V6HQb/

于 2013-03-20T14:12:51.537 に答える
0
var html = '<span class="Required FormFieldRequired" style="visibility: visible">*      </span>';
$("Required").remove();
$(dt).append(html);
于 2013-03-20T14:13:00.340 に答える