代码动态创建一个列表视图,但是我想这样做,当点击一个listview项时,它会将一个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>";
以上不起作用 - 我已经完成了警报(results.rows.item(i).url)并且它有一个值。
function openURL(url) {
alert("opening url " + url);
}
有人可以解释我做错了什么,我一直试图解决这个问题几个小时。
干杯!
答案 0 :(得分:4)
您使用单引号打开HTML属性,不能将其用作JavaScript字符串,因为您将关闭HTML属性,请使用双引号:
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>";