コード内のいくつかの関数に非常に不満を感じています。ユーザーがリンクをクリックすると起動する関数がいくつかあります。
パラメータは両方の関数に正しく送信されますが、ユーザーがリンクをクリックするdetailplace
と、参照エラーが発生します。これSomeName
は未定義です。関数の詳細は問題なく機能しているようです。なぜ機能detail
するのに機能detailplace
しないのですか?
HTML
<a href="javascript:detail(123456);">Details</a>
<a href="javascript:detailplace(SomeName);">Details</a>
Javascript
function detail(property) {
var summaryhtml = '<iframe src="' + URL + property + '" width="340px" height="400px" frameborder="0" class="sum_frame"></iframe>';
document.getElementById('itab1').innerHTML = summaryhtml;
}
function detailplace(place) {
var summaryhtml = '<iframe src="' + URL + place + '" width="340px" height="400px" frameborder="0" class="sum_frame"></iframe>';
document.getElementById('itab1').innerHTML = summaryhtml;
}
私はあなたのアドバイスを受けて、引用符を含むようにコードを編集しました。問題は、JavaScriptでリンクを作成していることです。SomeNameは、他の場所で文字列として定義されています。
link = '<a href="javascript:detailplace("';
link += SomeName;
link += '")";>Site Details</a>';
文字列をパラメータとして送信できるように、引用符内の引用符内の引用符をエスケープする正しい方法は何ですか?