Currenly我使用javascript动态绑定表..
我需要单引号来分隔字符串..
代码: -
var str ="";
str += "<td><a onclick='showFlightsByName("+val.Name+")' href='javascript:;'><span>" + val.Name + "</span></a></td>";
当前输出: -
<a onclick="showFlightsByName(AirTran Airways)" href="javascript:;"><span>Airways Airways</span></a>
欲望输出: -
<a onclick="showFlightsByName('AirTran Airways')" href="javascript:;"><span>Airways Airways</span></a>
答案 0 :(得分:4)
"<td><a onclick='showFlightsByName("+val.Name+")' href='javascript:;'><span>" + val.Name + "</span></a></td>"
应该是
"<td><a onclick=\"showFlightsByName('"+val.Name+"')\" href=\"javascript:;\"><span>" + val.Name + "</span></a></td>"
答案 1 :(得分:2)
试试这个:
var str ="";
str += "<td><a onclick=\"showFlightsByName('"+val.Name+"')\" href=\"javascript:;\"><span>" + val.Name + "</span></a></td>";
答案 2 :(得分:2)
通常在使用HTML时,对于字符串使用'
而不是"
更容易,例如:
var str = '<td><a onclick="showFlightsByName("' + val.Name + '")" href="javascript:;"><span>' + val.Name + '</span></a></td>';
但是,您是否考虑过使用JS来构建DOM对象?
var a = document.createElement("a");
a.href = "javascript:;";
a.onclick = "showFlightsByName(" + val.Name + ")";
a.appendChild(document.createElement("span").innerHTML(val.name));
var td = document.createElement("td");
td.appendChild(a);
这可能不是100%。自从我用简单的JS编写代码以来已经有一段时间了。 JQuery太容易了。
编辑:在那张纸条上......
var $a = $('<a>').append($('<span>').text(val.Name)).click(function() {
showFlightsByName(val.Name);
});
$('<td>').append($a).appendTo("WHEREVER");