0

'rgExpandCol'という名前の次のクラスを持つtdがあり、その中の入力のクラスを変更したいと思います。以下は私のhtmlです:

<tr>
    <td class="rgExpandCol">
    <input class="rgExpand" ...
    </td>
<tr>

このjqueryを試しましたが、$ findがnullになります:

$(this).closest('td').attr('rgExpand', 'rgCollapse');

編集 :::

基本的に、を使用radgridして非表示になっている行を使用および拡張しています

$(this).closest('tr').next('tr').css('display', '');

そして$(this)はグリッドの私のクリックイベントにあります

$("#<%=gv.ClientID%> tr:has(td)").click(function (e) { 
4

6 に答える 6

2

まず、入力を選択する必要があります。これは、単一のセレクターで実行できます。

var my_input = $(this).find('input.rgExpand');

次に、現在のクラスを削除して、新しいクラスを追加できます。

my_input
    .removeClass('rgExpand')
    .addClass('rgCollapse');
于 2012-12-14T14:25:53.093 に答える
1
$(this).closest('td').find("input").removeClass("old").addClass("new")

TD内の入力にCSSを適用します:)

于 2012-12-14T14:23:56.847 に答える
1
$('tr td.rgExpandCol input.rgExpand').removeClass('oldClass').addClass('newClass');
于 2012-12-14T14:25:46.493 に答える
0

removeClass()およびaddClass()を使用して変更を加えます。

$("#<%=gv.ClientID%> tr:has(td)").click(function (e) {
    e.preventDefault();
    $(this).find('input').addClass('rgExpand').removeClass('rgCollapse');
});

セレクターで使用されるIDがテーブルを識別すると仮定します。

于 2012-12-14T14:23:15.303 に答える
0

これを試して:

$('.rgExpandCol > input').removeClass("< existing class >").addClass("< new class >");
于 2012-12-14T14:24:52.463 に答える
0

それで、tdをターゲットにして、その中の入力のクラスを変更したいですか?

私はこれをします:

$('.rgExpandCol > input').removeClass('classtoremove').addClass('newclasstoadd');

于 2012-12-14T14:24:59.593 に答える