我有一个创建和“a”标签的函数,并使用Jquery的.innerHTML函数将其附加到div。我试图定义函数onclick将调用并传递一个字符串作为它的参数。但是,当运行代码时,字符串会更改,空格将替换为此(=“”)。这很奇怪,因为在标签的其他地方使用相同的字符串并正确打印。这是我的代码:
var companies = companyString.split(",");
var dropDown = document.getElementById('myDropdown');
for (var item in companies){
var str = "World Wrestling Entertainment"; //example
dropDown.innerHTML = dropDown.innerHTML + "<a href='#' onclick='filterCompany('"+str+"')'>"+str+"</a>";
}
任何想法?
感谢
这会在html中吐出:
<a href="#" onclick="filterCompany(" world="" wrestling="" entertainment')'="">World Wrestling Entertainment</a>
答案 0 :(得分:0)
你刚刚把引号混淆了一下。这应该有效:
var companies = companyString.split(",");
var dropDown = document.getElementById('myDropdown');
for (var item in companies){
var str = "World Wrestling Entertainment"; //example
dropDown.innerHTML = dropDown.innerHTML + '<a href="#" onclick="'+'filterCompany('+"'"+str+"'"+')'+'">'+str+'</a>';
}