動的にロードされる要素に対してon Click機能を作成する必要があります。この要素のIDは変数$element
です。 IDは文字列で保存されます。私はこのような.on
イベントハンドラに渡し:jQuery .onイベントが変数セレクタで動作しない
... .on("click", '"'+$element+'"', function() { ...
それは(Case 1 JSFiddleを参照)が動作し、エラーUncaught Error: Syntax error, unrecognized expression: "#2"
を与えていません。 #2
は要素のIDです。
... .on("click", function() {'"'+$element+'"'}, function() { ...
しかし、(
Case 2 JSFiddleを参照)クリッカブル要素に全体のDOMを回すようだ:
は、その後、私はこのような関数でラップしようとしました。なぜ...?
最後に、Case 3 JSFiddleはID #2
の要素をクリックすると何かが発生し、ID #3
の要素をクリックすると何も起こりません。何も起こりません。私はセレクタが変数として渡されたときに動作するようにはできません。
Case 1 JSFiddleは奇妙なエラーを出します。
Case 2 JSFiddle「a」または「b」をクリックすると「a」が赤色に変わります。
Case 3 JSFiddleは私が後にしているものです。 "a"をクリックすると、赤色に変わり、 "b"をクリックすると何も起こりません。あなたのフィドルから
あなたは ''#2' ''を文字列として出力しますが、これは無効です。さらに、IDは数字で始めるべきではありません。 '$ element'は既に文字列であるので、.on(" click "、$ element、function(){...')を書きます。 – Alex
https://jsfiddle.net/p4ursy9r/5/ – Alex
@Alex https: /www.w3.org/TR/html5/dom.html#the-id-attribute – epascarello