次のコンテンツをjquery変数に渡そうとしていますが、これをクリックすると期待される式が得られます}。それは引用権と関係がありますか?この例では、二重引用符と一重引用符をどのように使用するのですか?期待された式は '}'ですか?
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom('general')'>General</div>")
次のコンテンツをjquery変数に渡そうとしていますが、これをクリックすると期待される式が得られます}。それは引用権と関係がありますか?この例では、二重引用符と一重引用符をどのように使用するのですか?期待された式は '}'ですか?
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom('general')'>General</div>")
はい引用が間違っています。一重引用符内にエスケープされていない一重引用符があります。
異なる引用符:
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom(`general`)'>General</div>")
エスケープ引用符:
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom(\'general\')'>General</div>")
ありがとう!ダブル、シングル、バックチックに感謝しています。 – romoha11
エスケープシーケンスを使用して、変数から二重引用符を削除できます。
var content = $("<div class=\"channel\" id=\"general\" onclick=\"jumpToFirstLevelRoom('general')\">General</div>")
escape
characters
を使用
に
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom(\'general\')'>General</div>");
をあなたの現在のコード
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom('general')'>General</div>")
を変更
。あなたは、この問題を解決する
var content = $(`<div class='channel' id='general' onclick='jumpToFirstLevelRoom("general")'>General</div>`);
希望を行うことができますES6で
。
あなたが探しているものがある
あなたはこれらの引用技術のいずれかを使用する必要がありますthis:
var content = $("<div class='channel' id='general' enter code hereonclick='jumpToFirstLevelRoom(\'general\')'>General</div>");
二重引用符を削除するには、エスケープ文字を使用する必要があります。
あなたのコードで問題が発生しました。問題は、関数を呼び出して引数を渡すステートメントにあります。
var content = $("<div class='channel' id='general' onclick='jumpToFirstLevelRoom('general')'>General</div>")
あなたはjumpToFirstLevelRoom( '一般')機能で文字列の一般的なを渡しています。 したがって、文字列一般の一重引用符を開始するときは、onclick = 'の終了引用符として動作しています。
引数に関数内の文字列を渡さないようにしてください。その後、コードが実行されます。 私はそれがあなたを助けてくれることを願っています。 :)
問題はあなたの 'jumpToFirstLevelRoom'のどこかにあり、ここではありません。その関数にもコードを追加して、わかるようにします。第2に、あなたのブラウザでデバッガを試して、なぜ '}'がそこに渡されているのか見てみましょう。 –