日期:2014-05-16  浏览次数:20497 次

怎么用js自动完成这个,并提交呢?

<input type="checkbox" value="7490052" name="menuItem">
// 这个复选框有N个。

<input class="no3d" type="button" onclick="choiceItem();" value="全选/取消全选" name="buttom">
这个choiceItem();表示不知道在那,所以好像用不来。 >﹏< 
<input type="submit" value="强制审核通过" name="chkq">


用FF+FireBug弄了半天了,可是小白就不是成功。
想要实现:
1、全选所有的MenuItem复选框(要么是让Buttom去全选,要么那怎么全选,反正小白不明白 >﹏< )
2、选完了要chkq去提交。
注:木有form,反正这几行都不在form里 >﹏< 。

希望有详细的注解,能充分让人学习的示例一枚,多枚也有爱。
JavaScript 自动 示例 学习 小白菜

------解决方案--------------------
一般用checkbox来控制,用button你得需要一个全局变量记录选择的状态,将收集的内容放到表单的一个隐藏域中,再提交就行了

<input type="checkbox" value="7490052" name="menuItem">
<input type="checkbox" value="7490052" name="menuItem">
<input type="checkbox" value="7490052" name="menuItem">
<input type="checkbox" value="7490052" name="menuItem">
 
<input class="no3d" type="button" onclick="choiceItem();" value="全选/取消全选" name="buttom">
<input type="submit" value="强制审核通过" name="chkq" onclick="postForm()">


<form name="hiddenfrm" style="display:none" action='xxxxxxxxxxxxxxx' method="post">
<input type="hidden" name="menuItem">
</form>
<script type="text/javascript">
var checked=false;
function choiceItem(){
  checked=!checked;//////更换状态
  var os=document.getElementsByName('menuItem')
  for(var i=0,j=os.length;i<j;i++)os[i].checked=checked;
}
function getValues(){
  var os=document.getElementsByName('menuItem'),v=''
  for(var i=0,j=os.length;i<j;i++)if(os[i].checked)v+=','+os[i].value;
alert(v.substring(1))
  return v.substring(1);
}
function postForm(){
  document.hiddenfrm.menuItem.value=getValues();
  document.hiddenfrm.submit()