我正在使用此
创建链接 s.push("<tr><td><a href=\"#\"" +'& nbsp'+ "onclick=\"changeUrl('http://url.com/m4.html?bldg=" + attribs.Number + "')\">" + attribs.MapDisplay + "</a></td></td>");
dojo.byId("tbl").innerHTML = s.join("");
但是出来是
<a href=#
http://url.com/m4.html#%20onclick=
http://url.com/m4.html# onclick=%22changeUrl(%27http://url.com/m4.html?bldg=1800%27)%22
我试过+'&amp; nbsp'+ +“”+
或者只是空格和#而不是“#”,但是链接会被集中起来。
我该怎么做才能使这个链接正常工作?
谢谢,
答案 0 :(得分:2)
这就是为什么JavaScript允许您使用'
或"
来引用字符串:
s.push('<tr><td><a href="#" onclick="changeUrl(\'http://url.com/m4.html?bldg=' + attribs.Number + '\')">' + attribs.MapDisplay + '</a></td></tr>');
// ^--Single quotes escape this one --^ and this one ------------------------------------^
旁注:最后你有</td></td>
。我在上面已将其更正为</td></tr>
。
答案 1 :(得分:1)
答案 2 :(得分:1)
你能试试吗,
s.push("<tr><td><a href='\#\' onclick=\"changeUrl('http://url.com/m4.html?bldg=" + attribs.Number + "')\">" + attribs.MapDisplay + "</a></td></td>");
答案 3 :(得分:0)
我认为你可能会稍微复杂一点。转义引号是不合法的,因为JS允许您使用单引号或双引号。我打破了它,结束了与T.J相似的答案。克劳德,但它排除了逃脱的引号。
s.push('<tr><td><a href="#" onclick="changeUrl("http://url.com/m4.html?bldg="' + attribs.Number + '")">' + attribs.MapDisplay + '</a></td></td>');
查看从此字符串输出的URL,并告诉我们它与您应该具有的内容有何不同。
编辑:是一个方法吗?我以前没见过,也找不到与之相关的任何内容。