我一直在尝试在下拉列表中显示固定数量的项目,使其可以滚动。例如,没有。要显示的项目是8。
我使用的代码是:
multiSelectOption = "<select style='position:absolute;z-index:1' name='noOfSameService' onmousedown='if(this.options.length>8){this.size=8;}' onchange='this.size=0;' onblur='this.size=0;' id='noOfSameService' >"+createMultiServiceOptions()+"</select>"
这在FireFox和Chrome中运行良好,但在IE中,如果选择该选项,它将停止工作,并重新加载显示消息的页面。 如果onchange ='this.size = 0;'省略,然后一切都在IE中工作正常,但是当选择该选项时,列表仍会显示,直到在下拉列表中单击它为止。
一点建议可能是一个很大的帮助。我需要IE8 +的解决方案。提前谢谢。
更新:我使用JQuery的change()尝试了以下内容:
multiSelectOption = "<select style='position:absolute;z-index:1' name='noOfSameService' onmousedown='if(this.options.length>6){this.size=6;}' onblur='this.size=0;' id='noOfSameService' >"+createMultiServiceOptions()+"</select>";
$("#noOfSameService").change(function() {
this.size = 1;
this.blur();
});