jsp頁面中的代碼:
承運人:
input type="checkbox" name="carrier" id="carrier" value="HU" />
input type="checkbox" name="carrier" id="carrier" value="JD" />
input type="checkbox" name="carrier" id="carrier" value="GS" />
input type="checkbox" name="carrier" id="carrier" value="GN" />
input type="checkbox" name="carrier" id="carrier" value="8L" />
js代碼:
//取出後台傳遞過來的承運人值,然後填充到前台頁面
var c=data.dtospecialPeriod.carrier;//這是從數據庫取出的數據,格式為HU/GS/8L
var s = [];
s = c.split("/");
var obj = document.getElementsByName("carrier");
for(var x=0; x<s.length; x++){
for(var i=0;i<obj.length;i++ ){
if(obj[i].value==s[x])
{
obj[i].checked=true;
break;
}
}
}
實現的功能是:從數據庫取出承運人數據格式上面所示,然後顯示到多選框中被選。問題:老取不到多選框carrier的第一個值(value=“HU”),其他值都能正常取到。這樣就無法判斷從後台傳遞來HU時,value=“HU”的框無法顯示被選。怎麼解決?謝謝
我已經解決了 就是把多選框中的id屬性去掉,原因可能是id屬性名字不能重復。所以只留name屬性就好!
input type="checkbox" name="carrier" value="HU" />
input type="checkbox" name="carrier" value="JD" />
input type="checkbox" name="carrier" value="GS" />
input type="checkbox" name="carrier" value="GN" />
input type="checkbox" name="carrier" value="8L" />
把id=“carrier”去掉就行