今天同事问了一个问题,如何用 JS 获得 webwork 标签 <ww:checkboxlist> 的值,当时没有解决,现在查了点资料知道如何解决,和大家分享一下。
标签示例如下: < ww:checkboxlist list ="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}" name ="my.friends" /> < input type =”button” value =”查看” onclick =”get();” />
对应 js 为: function get() ... { var list = new Array( 5 ); var object = document.getElementsByName( ' my.friends ' ); for ( var i = 0 ;i < object.length;i ++ ) ... { list[i] = object[i].value; } for ( var j = 0 ;j < list.length;j ++ ) ... { alert(list[j]); } 这里只是一段示例代码,在每选择一个选项的时候将得到所有的选择框的值。当然你可以对其进行改写,得到你选择框的值( object[i].checked ),然后打印出来。 在这里我们没用 document.getElementByIdx 得到该对象,因为如果我们将该标签写成 < ww:checkboxlist list ="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}" name ="my.friends" id =”mf” /> 用 document.getElementByIdx ( ’mf’ )是得不到该对象的,因为该语句被浏览器翻译成 < input type ="checkbox" name ="my.friends" value ="Patrick" id ="my.friends-1" /> < label for ="my.friends-1" class ="checkboxLabel" > Patrick </ label > < input type ="checkbox" name ="my.friends" value ="Jason" ="my.friends-2" /> < label for ="my.friends-2" class ="checkboxLabel" > Jason </ label > < input type ="checkbox" name ="my.friends" value ="Jay" id ="my.friends-3" /> < label for ="my.friends-3" class ="checkboxLabel" > Jay </ label > < input type ="checkbox" name ="my.friends" value ="Toby" id ="my.friends-4" /> < label for ="my.friends-4" class ="checkboxLabel" > Toby </ label > < input type ="checkbox" name ="my.friends" value ="Rene" id ="my.friends-5" /> < label for ="my.friends-5" class ="checkboxLabel" > Rene </ label > < input type ="button" value ="得到js" onclick ="get();" /> (该段代码是通过firefox浏览器编译得到的)