3

コードは動的に機能するリストビューを作成しますが、リストビューアイテムがクリックされると、URLパラメーターを別のメソッドに送信するようにしたいのです。パラメータを設定すると、パラメータに警告が表示されませんが、パラメータを指定しないと機能します。

var output = 
"<li onclick='openURL()'><h3> Module Code: " + 
results.rows.item(i).module 
+ "</h3>Room: " 
+ results.rows.item(i).room +
"</li>";

上記は機能します-openURL()にパラメータはありません。

var output = 
    "<li onclick='openURL('" + results.rows.item(i).url + "')'><h3> Module Code: " + 
    results.rows.item(i).module 
    + "</h3>Room: " 
    + results.rows.item(i).room +
    "</li>";

上記は機能しません-alert(results.rows.item(i).url)を実行しましたが、値があります。

function openURL(url) {
    alert("opening url " + url);
} 

誰かが私が間違っていることを説明できますか、私は何時間も問題を解決しようとしてきました。

乾杯!

4

1 に答える 1

4

HTML属性を開くために一重引用符を使用しています。HTML属性を閉じるため、JavaScript文字列として使用することはできません。二重引用符を使用してください。

var output = 
    "<li onclick='openURL(\"" + results.rows.item(i).url + "\")'><h3> Module Code: " + 
    results.rows.item(i).module 
    + "</h3>Room: " 
    + results.rows.item(i).room +
    "</li>";
于 2012-10-26T14:18:22.477 に答える