我正在生成动态HTML,并希望将数组传递给调用函数。该阵列也是动态生成的。
pinfoarray的内容有点像这样"冰上曲棍球","青少年篮球""女子足球"
var theHost = "<a href='#someDialog' onclick='chnghost(' + pinfoarray + ');' data-toggle='modal' class='button'>Change</a>";
如何让它在没有错误的情况下将数组发送到调用函数。
答案 0 :(得分:1)
如何制作like this:
var anchor = document.createElement('a');
anchor.href = '#someDialog';
anchor.setAttribute('data-toggle','modal');
anchor.className='button';
anchor.onclick = function(){
chnghost(pinfoarray);
}
答案 1 :(得分:0)
你需要关闭字符串双引号来放置一个javascript变量:
var theHost = "<a href='#someDialog' onclick='chnghost('" + pinfoarray + "');' data-toggle='modal' class='button'>Change</a>";
答案 2 :(得分:0)
您需要正确终止字符串并对参数进行编码。您还需要防范数据中的保留字符(escapeHtml
)。
var theHost = "<a href='#someDialog' onclick='chnghost(" + escapeHtml(JSON.stringify(pinfoarray)) + ");' data-toggle='modal' class='button'>Change</a>";
如果你正在使用jQuery,你可以像这样实现escapeHtml:
function escapeHtml(text) {
return $("<div/>").text(text).html();
}