我试图通过javascript显示调查列表。 这是代码:
function ParseSurveys(surveyList) {
var sideBarSurveyList = document.getElementById('sliding-navigation');
for (var m = 0; m < surveyList.length; m++) {
var child = document.createElement("li");
child.innerHTML += "<li class='sliding-element'><a href='javascript:sendSurvey(" + (m + 1) + ")'>Survey " + surveyList[m].Id + "</a></li>";
sideBarSurveyList.insertBefore(child, sideBarSurveyList.lastChild);
}
}
它适用于Chrome和Firefox,但它不适用于IE9。 在Chrome和Firefox上,调查列表如下所示: •调查1 这就是我想要的。
然而,在IE9上,它看起来像: • •调查1
为什么IE9显示两个点? 我可以为此提供简单的解决方案吗?我不想为IE9和任何其他浏览器编写两个版本的Javascript。 :)
谢谢! 阿什利
答案 0 :(得分:0)
也许你不打算嵌套两个<li>
?请尝试省略<li>
作业中的innerHTML
标记:
function ParseSurveys(surveyList) {
var sideBarSurveyList = document.getElementById('sliding-navigation');
for (var m = 0; m < surveyList.length; m++) {
var child = document.createElement("li");
child.className = 'sliding-element';
child.innerHTML += "<a href='javascript:sendSurvey(" + (m + 1) + ")'>Survey " + surveyList[m].Id + "</a>";
sideBarSurveyList.insertBefore(child, sideBarSurveyList.lastChild);
}
}
答案 1 :(得分:0)
因为你要创造两次LI;一次使用createElement,一次使用内部html。