通过href调用javascript函数?

时间:2015-06-12 07:53:28

标签: javascript html

我试图通过href调用javascript函数(不带参数)它工作正常但是同样的函数调用(带参数)它通过错误意外结束输入

infowindow.setContent("<table><tr><th>Name</th><td><a href='javascript:Institute('"+code+"')'>" + text + "</a></td></tr><tr><th>IP Address</th><td>" + ip + "</td></tr><tr><th>Code</th><td><a href='javascript:Institute();'>" + code + "</a></td></tr></table>");

3 个答案:

答案 0 :(得分:2)

这应该有效:

function(doc) { 
if(doc._conflicts)
emit(doc._id, doc);
emit(doc._id, {oldNumber: doc.phonenumber, newNumber: doc.phonenumber, name: doc.name});
}

这样,结果HTML对于标记属性使用双引号(infowindow.setContent('<table><tr><th>Name</th><td><a href="javascript:Institute(\''+code+'\')">' + text + '</a></td></tr><tr><th>IP Address</th><td>' + ip + '</td></tr><tr><th>Code</th><td><a href="javascript:Institute();">' + code + '</a></td></tr></table>'); ),对JavaScript字符串使用单引号("),这是确保不会发生冲突的最佳方法。

为了演示,这会使用'document.write(),但如果您点击运行代码段

,则有效

alert()

答案 1 :(得分:1)

您的报价有问题。 使用:<a href='javascript:Institute(\'"+code+"\')'>

如果您使用网络浏览器中的HTML调试器,则可以轻松找到它。

答案 2 :(得分:0)

infowindow.setContent('<table><tr><th>Name</th><td><a href="javascript:Institute(\""+code+"\");' + text + '</a></td></tr><tr><th>IP Address</th><td>' + ip + '</td></tr><tr><th>Code</th><td><a href="javascript:Institute();">' + code + '</a></td></tr></table>');