-2

Jqueryを使用してこのdiv用に作成されたスタイル(class = "textinput")を削除したいと思います。このtextinputクラスは、他のdivにも使用されています。つまり、読み取り専用クラスのtextinput機能のみを使用したいということです。

2つのシナリオを考えてみましょう:1)

<div class="textinput boxshadow readonly">
<input id="id_lastname" class="boxshadowinset yellowbackground" type="text" maxlength="255" value="Language" name="lastname" readonly="readonly" title="This field is read-only">
</div>

2)

<div class="readonly">
<div class="textinput boxshadow">
<input id="id_lastname" class="boxshadowinset yellowbackground" type="text" maxlength="255" value="Language" name="lastname" readonly="readonly" title="This field is read-only">
</div>

私はこれを試しました:

$('div:readonly').removeclass('textinput');

うまくいきませんでした...

2つのシナリオのソリューションはどのように異なりますか?

これを行う方法について何か提案はありますか?これを解決するためのガイダンスが必要です...

4

4 に答える 4

4

クラス修飾子はであり、では.ありません:。また、@ Cupidvogelが書いているように、それはであるはずですremoveClass

$('div.readonly').removeClass('textinput');

編集

ネストされたケースも処理するための新しい要件:

$('div.readonly, div.readonly div.textinput').removeClass('textinput');

textinputこれは、クラスを持つ読み取り専用divと、クラスtexinputを持つdivに含まれるクラスを持つすべてのdivの両方に一致しますreadonly

于 2012-08-02T07:29:43.723 に答える
2

関数はremoveClass()、ではなくremoveclass()です。

于 2012-08-02T07:30:28.430 に答える
0

セレクターを.:$('div.readonly')で試してください

于 2012-08-02T07:30:37.713 に答える
0

クラス修飾子は is .and not:です。また、関数はremoveClassであり、クラスを削除しません..

$('div.readonly').removeClass('textinput');
于 2012-08-02T07:34:46.403 に答える