このようなjQueryを使ってテーブル行を削除しようとしています。非標準のid文字を持つjQueryのテーブル行を削除する
function removeTableRow(trId){
$('#' + trId).remove();
}
idに "%"、 "^"、 "&"、 "、"などの文字が含まれていると、これは機能しません。 ....
これについて何か回避策があるかどうか知っていますか?
このようなjQueryを使ってテーブル行を削除しようとしています。非標準のid文字を持つjQueryのテーブル行を削除する
function removeTableRow(trId){
$('#' + trId).remove();
}
idに "%"、 "^"、 "&"、 "、"などの文字が含まれていると、これは機能しません。 ....
これについて何か回避策があるかどうか知っていますか?
私はここで見つけることができる理由と信じて:私は明白以外の回避策について(あなたのIDを変更する)ので、わからないんだけど、しかしWhat are valid values for the id attribute in HTML?
を
私はそれらの文字を使用することをお勧めしませんid文字列にします。しかし、必要があると感じたら、\\
を使用してセレクタの文字をエスケープする必要があります。
<table>
<tr id="b%b">
<td>hello</td>
</tr>
<tr>
<td>world</td>
</tr>
</table>
function removeTableRow(trId){
$('#' + trId).remove();
}
removeTableRow("b\\%b");
HTMLこれらの文字and be valid at the same time含めることはできません4.0のID:範囲 AZまたはAZの文字で始まる必要があります型IDとNAME の
属性値をとアンダースコア( "_")、 コロン( ":")、ピリオド( "。" )。これらの 値は大文字と小文字が区別されます。
あなたは、あなたがこの試すことができなければならない場合:
function removeTableRow(trId) {
$(document.getElementById(trId)).remove();
}
を私はしかし、HTMLを固定お勧めします。
私はそれが動作するかどうかわからないんだけど、あなたはそれが、このようなクラスやグループなどの別の属性を介してそれらを削除するには、多くのテーブルに複数の行であればそれは良いでしょう
var id = "id%#&hh";
$("tr").each(function(){
if($(this).attr("id") == id){
$(this).remove();
return;
}
});
それを試すことができます。ここで
は、グループ属性を経由して削除する方法の例です:
$("table tr[group='"+groupname+"']").remove();
私はこのことができます願っています。
私の知る限り、正当なHTML IDにはこれらの文字を含むことはできません... – Tomalak
はい、これらは違法ですが、jqueryも合法的なもののいくつかで苦労しています –
クラス名を付けて削除します。クラス名 – kobe