原网址:http://www.jb51.net/css/76690.html
使用select的范例在ie8时显示出问题,ie7下直接显示不了option,经过查资料将其兼容了,这里记录一下,感兴趣的朋友可以参考下哈,希望可以帮助到你
方法1: 代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.add(new Option("A")); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html>
测试结果:Firefox、Chrome、IE9、IE8、IE7、Safari、Opera显示正常。
方法2:
<html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.appendChild(new Option("B")); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html>
测试结果:Firefox、Chrome、Safari、Opera显示正常,IE9、IE8、IE7下不能显示。
方法3:
代码如下: 复制代码代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.add(new Option("A")); s.insertBefore(new Option("B"), s.options[1]); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html> 测试结果:Firefox、Chrome、Safari、Opera显示正常,IE9、IE8、IE7下不能显示。 方法4: 将方法3的insertBefore第二个参数去掉,也就是说我们第一个option就想使用insertBefore时,看一下情况: 复制代码代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.insertBefore(new Option("D")); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html> 测试结果:Chrome、Safari显示正常,Firefox、IE9、IE8、IE7、Opera下不能显示。 方法5: 代码如下: 复制代码代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.options[0] = new Option("E"); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html> 测试结果:Firefox、Chrome、IE9、IE8、IE7、Safari、Opera显示正常。 方法6: 代码如下: 复制代码代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); var op = document.createElement("option"); op.appendChild(document.createTextNode("F")); s.appendChild(op); } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html> 测试结果:Firefox、Chrome、IE9、IE8、IE7、Safari、Opera显示正常。 方法7: 代码如下: 复制代码代码如下: <html> <head> <title></title> <script type="text/javascript"> function init() { var s = document.getElementById("s"); s.innerHTML = "<option>X</option><option>Y</option>"; } </script> </head> <body onload="init()"> <select id="s" style="width:100px;background:lightskyblue"></select> </body> </html>