internet explorer和javascript中的动态列表
我有一个需要用户输入的页面,然后它将执行一些javascript并填充页面上的字段。其中一部分包括调用一个perl脚本,该脚本将运行并从另一个页面获取数据,并根据用户的输入进行检查。perl脚本将返回的项目数可以是从零到十甚至更多。为了处理这个问题,我编写了一些javascript,将每个项目附加到html页面的列表中 我遇到的问题是,它似乎在Safari和chrome中工作得非常好,但似乎不想在InternetExplorer6或7中工作。这里的主要问题是,大多数使用它的人都将使用internet explorer。我的javascript代码中没有错误internet explorer和javascript中的动态列表,javascript,html,internet-explorer,dynamic,html-lists,Javascript,Html,Internet Explorer,Dynamic,Html Lists,我有一个需要用户输入的页面,然后它将执行一些javascript并填充页面上的字段。其中一部分包括调用一个perl脚本,该脚本将运行并从另一个页面获取数据,并根据用户的输入进行检查。perl脚本将返回的项目数可以是从零到十甚至更多。为了处理这个问题,我编写了一些javascript,将每个项目附加到html页面的列表中 我遇到的问题是,它似乎在Safari和chrome中工作得非常好,但似乎不想在InternetExplorer6或7中工作。这里的主要问题是,大多数使用它的人都将使用intern
然后我让javascript将div中的实例替换为
诸如此类的废话
并在每次需要向列表中添加项目时重复该操作。页面上的所有其他内容都可以正常工作,甚至还有新行显示新列表项的位置。但是,它没有显示任何文本
是我做错了什么,还是internet explorer没有正确呈现
编辑:添加请求的信息
var dateList = document.getElementById('testDiv').innerHTML;
var insertToList = "<li><div>blah blah blah</div></li></ul>";
dateList = dateList.replace('</ul>', insertToList);
document.getElementById('testDiv').innerHTML = dateList;
var-dateList=document.getElementById('testDiv').innerHTML;
var insertToList=“诸如此类” ”;
日期列表=日期列表。替换(“”,插入列表);
document.getElementById('testDiv')。innerHTML=dateList;
我在一个循环中循环了这些结果,并根据需要将结果添加到列表中。不幸的是,我无法链接到您的页面,因为这是一个内部项目。取决于您使用的选择器引擎,IE是不同的。我建议使用jQuery来选择和替换内容,因为它可以为您处理浏览器差异。在IE6中testDiv.innerHTML
是
。请注意大写标记
dateList.replace(“”,…)
找不到任何匹配项,因此它不执行替换
更好的方法是获取对list(ul)元素的引用,并将HTML附加到那里
var ulRef = document.getElementById('testDiv').getElementsByTagName("ul")[0];
ulRef.innerHTML += "<li><div>blah blah blah</div></li>";
var ulRef=document.getElementById('testDiv').getElementsByTagName(“ul”)[0];
ulRef.innerHTML+=“诸如此类诸如此类;
您可以链接到该网页吗?或者至少发布执行替换的Javascript?参见上文,添加了Javascript代码。