varに保存されているクラス名のjQuery期間
-
29-10-2019 - |
質問
私はこのコードを持っています:
var imgId = this.id; //file1.jpg
この:
$('.img\\' + imgId).remove();
問題は、「。」から逃れることができないということです。 varにあるので、以前ではありません。私に何ができる?
解決
ファイル名をクラス/IDの一部としてマークアップに保存しないでください。代わりに、データ属性を使用します。
<div class="img" data-filename="file1.jpg" />
そして、あなたのjqueryで:
$('.img[data-filename="'+imgId+'"]').remove();
他のヒント
私はおそらくこの質問を誤解していました - しかし、これはうまくいくでしょうか?
$('.img\\' + replace(imgId,'.','\.')).remove();
あなたはようなことをすることができません $("#"+imgId, ".img").remove()
使用する .replace
それを置き換える。
var imgId = this.id.replace('.', '/.'); //Or whatever other escaping is there.
期間はHTML IDの有効なエンティティですが、私は強く推測します。特に期間がID値で使用されない別の命名規則に従います。
所属していません StackOverflow