try:if(document.formname.mid.checked==false){
    window.alert(" The Charge must one Item,Please Add Item!");

解决方案 »

  1.   

    你有几个mid?如果就一个你使用document.formname.mid.length当然就小于1了
    你是不是想把选中的进行保存?
    如果是这样,那就用:
    var j=0;
    var obj=document.formname
    for (i=0;i<obj.mid.length;i++)
    { if (obj.mid[i].checked)
      {   j++;}
    }
    if (j<1)
    alert(" The Charge must one Item,Please Add Item!");
    return false;
      

  2.   

    NO,NO ,不用这种判断的,因为这是一个FORM中的其中一个TABEL 的内容,对这个TABLE 的内容除了删除和增加外不做其他任何的操作,但对于整个JSP(FORM)要想SAVE的话就要判断它有没有Item,至少一个,如果没有的话就提醒用户ADD  Item, 返回本页面。我又不用选择,所以是行不通的了。
      

  3.   

    你的意思是如果不存在这个checkbox或者说table中一行都没有就返回false其它则返回true?
    如果没有的话document.formname.mid得到的是null
    null<1永远成立,如果你只要判断是否存在的话直接用
    if(document.formname.mid==null){
        window.alert(" The Charge must one Item,Please Add Item!");
        return false;
      }
     return true;
      

  4.   

    to:silentlamb(silent)谢了!你的方法是正确的,但是在我的JSP页面里有多个提交的BUTTON,SAVES时要判断,ADD TIME时就不用判断了,所以我用了javascript里的 event 方法进行判断我 click 的是哪个操做,用到以下方法,但是现在出现的问题是,不管我做何种操作都不行了;本意是想如果是SAVE的话就用到下面的IF,其他的就不用IF判断了。
    <html>
    ..
    <script language="javascript">
    function sub(){
    ...
    src = window.event.srcElement;   
      if(src.name=='Save'){
       if(document.AddIDDCharge.mid==null){
          window.alert(" The IDD must one Item,Please Add Item!");
          return false;
        }
      }
    return true;
    }
    </script>
    </head>
    <body bgcolor="#FFFFFF" text="#000000">
    <form name="AddIDDCharge" action=""  method="post"  onsubmit="return sub()">
    .....
     <input type="submit" name="button" value="Save" onclick="document.AddIDDCharge.action='IDDChargeAll_ok.jsp'">
    ...
    <input type="submit" name="AddItem" value="Add Item" onclick="document.AddIDDCharge.action.='AddIDDChargeItem.jsp'">
    ...
    <input type="submit" name="Delete" value="Delete Checked Item" onclick="document.AddIDDCharge.action.='DeleteIDDChargeItem.jsp'">
    请大家继续帮帮忙了;