07-07
18
实现<html:multibox>标签的全选
作者:Java伴侣 日期:2007-07-18
这里写下在前台实现全选的方法:
<logic:iterate id="emps" indexId="indexid" name="EMPS" type="companypj.vo.EmployeeVO">
<!--遍历出复选框元素--!>
<html:multibox name="emps" property="strArrary" onclick="checkItem(this, 'mmAll')">
<bean:write name="emps" property="id"/>
</html:multibox>
姓名:<bean:write name="emps" property="name"/>
</logic:iterate>
全选/取消<input type=checkbox name=mmAll onclick="checkAll(this, 'strArrary')">
<!--全选与不全选的切换--!>
<script language=Javascript>
function checkAll(e, itemName)
{
var aa = document.getElementsByName(itemName);
for (var i=0; i<aa.length; i++)
aa[i].checked = e.checked;
}
function checkItem(e, allName)
{
var all = document.getElementsByName(allName)[0];
if(!e.checked) all.checked = false;
else
{
var aa = document.getElementsByName(e.name);
for (var i=0; i<aa.length; i++)
if(!aa[i].checked) return;
all.checked = true;
}
}
</script>
值得注意的是加粗字体部分,也就是VO值对象中的数组名和传入js中的方法参数要一致。改完就能用了!
复制内容到剪贴板 程序代码
<logic:iterate id="emps" indexId="indexid" name="EMPS" type="companypj.vo.EmployeeVO">
<!--遍历出复选框元素--!>
<html:multibox name="emps" property="strArrary" onclick="checkItem(this, 'mmAll')">
<bean:write name="emps" property="id"/>
</html:multibox>
姓名:<bean:write name="emps" property="name"/>
</logic:iterate>
全选/取消<input type=checkbox name=mmAll onclick="checkAll(this, 'strArrary')">
<!--全选与不全选的切换--!>
<script language=Javascript>
function checkAll(e, itemName)
{
var aa = document.getElementsByName(itemName);
for (var i=0; i<aa.length; i++)
aa[i].checked = e.checked;
}
function checkItem(e, allName)
{
var all = document.getElementsByName(allName)[0];
if(!e.checked) all.checked = false;
else
{
var aa = document.getElementsByName(e.name);
for (var i=0; i<aa.length; i++)
if(!aa[i].checked) return;
all.checked = true;
}
}
</script>
值得注意的是加粗字体部分,也就是VO值对象中的数组名和传入js中的方法参数要一致。改完就能用了!
评论: 0 | 引用: 0 | 查看次数: 948
发表评论