0

の中に特定のスタイルのspanタグがtdあります。そのスパンタグを見つけて、以下に非表示にしたいのは、私が持っているコードです。tablecolor:red

HTML:

<table class="table_1">
<tbody>
<tr>
<td>
<span id="dynamically generated" style="color:red;">
Error! correct it.
</span> 
</td>
<td>
<span>
// Three links to three different sites
<a>
</a>
<a>
</a>
<a>
</a>
</span>
</td>
</tr>
<tr>
</tr> 
</tbody>
</table>

編集最初のスパンのIDは、「Span1」「Span2」のように動的に生成されます。

Jquery:

     $("table.table_1 tr").each(function (n) {
        $(this).find('td:eq(0)').find('span').html("");
    });

上記のjqueryコードは、spanタグが異なっていても、両方のタグを非表示にしていますtd。私は何か間違ったことをしていますか?エラーメッセージが含まれている最初のスパンタグを非表示にしたいだけです。方法はありますか?

4

5 に答える 5

2

通常、trまたはtdにクラスを配置し('error'など)、それをhide()します。

<span id="dynamically-generated" class="error">
Error! correct it.
</span>

...

$('table.table_1 .error').hide();

hidden()はコンテンツを破壊しないため、非表示はhtml('')を呼び出すよりもはるかに洗練されています。したがって、後でエラーを表示する場合は、show()を呼び出すだけです。:)

最後に、CSSに赤い色を付ける必要があります。

.error { color:red; }
于 2012-07-12T07:29:46.887 に答える
1

これを試して:

$("table.table_1 tr span[style='color:red']:first")

また:

$(".table_1 span[style]:first")

デモ

于 2012-07-12T07:26:14.977 に答える
1

これを試して:

デモ

$('.table_1 span').filter(function() {
    var colormatch= 'rgb(255, 0, 0)'; // match color:red

    return ( $(this).css('color') == colormatch);

}).css('display', 'none'); // hide the span​
于 2012-07-12T07:32:03.470 に答える
1

「エラー」という単語を見つけて、その方法で削除できます。

例については、ここjsFiddle、または以下を参照してください。

$(document).ready(function() {
    $("table.table_1 tr td span").each(function() {
        if ($(this).html().lastIndexOf("Error") > 0) {
            $(this).html("");
        }
    });
});
于 2012-07-12T07:41:10.930 に答える
0

まず、マークアップを見てみましょう。

ID要素とNAME要素は、文字で始まる必要があります。つまり、大文字のAからZ、または小文字のaからzです。番号は許可されていません。最初の文字の後は、任意の数の文字(aからz、AからZ)、数字(0から9)、ハイフン(-)、アンダースコア(_)、コロン(:)、およびピリオド(。)を使用できます。

出典:http ://www.electrictoolbox.com/valid-characters-html-id-attribute/

スペースは許可されていないため、実際にはid="dynamically-generated"の代わりに使用する必要がありid="dynamically generated"ます。その後、あなたは簡単に行うことができます

$('#dynamically-generated').hide()

ただし、複数のdynamically-generated要素がある場合があるため、ここではクラス属性を使用することをお勧めします。だからclass="dynamically-generated"あなたを使って書くだろう

$('.dynamically-generated').hide()
于 2012-07-12T07:28:33.123 に答える