簡體   English   中英

使用javascript的select選項未顯示選擇值

[英]select option with javascript is not displaying select value

在這里,我有一個簡單的3選擇選項,例如選擇1,選擇2和選擇3。

在更改select 1選項時,將重置select 2和select 3中的值,在更改select 2值時,調用另一個javascript函數以重置select 3中的值。

這里的問題是,首先選擇1正常工作,並且從select2中選擇值后正確顯示選擇2值時並未選擇始終顯示一個值。

如果我從選擇2中刪除javascript onchange調用,則其工作正常。

下面的示例代碼。

 function L1Change() { var obj = document.getElementById("L1"); objVal = obj.options[obj.options.selectedIndex].value; var obj2 = document.getElementById("L2"); obj2.options.length = 0; obj2.options[0] = new option("op33","1"); obj2.options[0].selected = "true"; if (objVal == 1) { obj2.options[1] = new option("op34","2"); obj2.options[2] = new option("op35","3"); } if (objVal == 2) { obj2.options[1] = new option("op44","2"); obj2.options[2] = new option("op45","3"); } } 
 <select name="L1" id="I1" onChange="javascript:L1Change()"> <option selected="selected" value="1">op1</option> <option value="2">op2</option> <option value="3">op3</option> </select> <select name="L2" id="I2" onChange="javascript:L2Change()"> <option selected="selected" value="1">op11</option> <option value="2">op12</option> <option value="3">op13</option> </select> 

從上面的代碼中,如果我從select2中的select2值中刪除更改功能,則它正常工作。 任何人都會給我一個解決此問題的想法。

謝謝。

 <!DOCTYPE html> <html> <head> <script> function configureDropDownLists(ddl1,ddl2) { var Customer = new Array('Customer1', 'Customer2', 'Customer3'); var Script = new Array('Script1', 'Script2', 'Script3'); var etc = new Array('etc1', 'etc2', 'etc3'); var cust1 = new Array('cust11', 'cust12', 'cust13'); var cust2 = new Array('cust21', 'cust22', 'cust23'); var cust3 = new Array('cust31', 'cust32', 'cust33'); switch (ddl1.value) { case 'Customer': ddl2.options.length = 0; for (i = 0; i < Customer.length; i++) { createOption(ddl2, Customer[i], Customer[i]); } break; case 'Script': ddl2.options.length = 0; for (i = 0; i < Script.length; i++) { createOption(ddl2, Script[i], Script[i]); } break; case 'etc': ddl2.options.length = 0; for (i = 0; i < etc.length; i++) { createOption(ddl2, etc[i], etc[i]); } break; case 'Customer1': ddl2.options.length = 0; for (i = 0; i < etc.length; i++) { createOption(ddl2, cust1[i], cust1[i]); } break; case 'Customer2': ddl2.options.length = 0; for (i = 0; i < etc.length; i++) { createOption(ddl2, cust2[i], cust2[i]); } break; case 'Customer3': ddl2.options.length = 0; for (i = 0; i < etc.length; i++) { createOption(ddl2, cust3[i], cust3[i]); } break; default: ddl2.options.length = 0; break; } } function createOption(ddl, text, value) { var opt = document.createElement('option'); opt.value = value; opt.text = text; ddl.options.add(opt); } </script> </head> <body> <select id="ddl" onchange="configureDropDownLists(this,document.getElementById('ddl2'))"> <option value=""></option> <option value="Customer">Customer</option> <option value="Script">Script</option> <option value="etc">etc</option> </select> <select id="ddl2" onchange="configureDropDownLists(this,document.getElementById('ddl3'))"> </select> <select id="ddl3"> </select> </body> </html> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM