我发生了最奇怪的事情。我有以下代码段:
$('#workQueueTable').DataTable({
"data": requests,
"columns": [
{ "title": "Project ID", "data":"ProjectID", "render": function(data) {
return '<a href="javascript:void();" onclick="getDataFromSP("FormByID", "' + data + '")"' + '>' + data + '</a>';
}
},
{ "title": "Project Description", "data": "Title", "sWidth": "50%" },
{ "title": "Date Requested", "data": "DateRequested", "sWidth": "10%", "render": function(data) {
return (data.getMonth()+1) + '/' + data.getDate() + '/' + data.getFullYear();
} },
{ "title": "Stage", "data": "Stage", "sWidth": "15%" }
]
});
那应该是一个简单的网址:
<a href='javascript:void();' onclick="getDataFromSP("FormByID", "PR012393")>PR012393</a>
但我得到的是:
<a onclick="getDataFromSP(" href="javascript:void();" FormByID?,="" ?PR-NewReq?)?="">
非常感谢任何指导。
提前谢谢你。 JD
答案 0 :(得分:0)
请改用此行:
return '<a href="javascript:;" onclick="getDataFromSP(\'FormByID\', \'' + data + '\')">' + data + '</a>'
使用"
是在双引号括起的属性值中使用双引号的唯一方法。例如onclick="getData("value")"
。
但是,使用单引号更容易。但是,您需要将它们作为\'
进行转义,以便这些引号不会结束它们所包含的字符串,因为您还使用单引号来定义字符串。
答案 1 :(得分:-1)
更改此行
return '<a href="javascript:void();" onclick="getDataFromSP("FormByID", "' + data + '")"' + '>' + data + '</a>'
到
return '<a href="javascript:void();" onclick="getDataFromSP(\"FormByID\", \"' + data + '\")"' + '>' + data + '</a>'
您必须转义"
字符,否则它将比预期更早退出onclick
属性。
编辑:
尝试使用"
'
return '<a href="javascript:void();" onclick="getDataFromSP(\'FormByID\', \'' + data + '\')">' + data + '</a>'