Javascript 选中复选框验证以验证至少一个选项

Javascript 选中复选框验证以验证至少一个选项,javascript,java,jsp,Javascript,Java,Jsp,需要使用java脚本验证是否至少选中了一个复选框的帮助 工作流程: 1.用户选择复选框值 2.选择值后,用户点击保存按钮 如果未选择任何复选框值,则应发出警报以选择至少一个复选框值 这是密码 products.jsp <%@page import="java.util.List"%> <%@page import="web.Products"%> <%@page import="java.util.ArrayList"%> <%@

需要使用java脚本验证是否至少选中了一个复选框的帮助

工作流程:

1.用户选择复选框值

2.选择值后,用户点击保存按钮

如果未选择任何复选框值,则应发出警报以选择至少一个复选框值

这是密码

products.jsp

<%@page import="java.util.List"%>
    <%@page import="web.Products"%>
    <%@page import="java.util.ArrayList"%>
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
  <html>
<head>
<script type="text/javascript">
function Validate()

    {
        var x[]=document.forms["sform"]["prod"].value;
        for(var i=0;i<x.length;i++){
            if(x[i].type=='checkbox'&&x[i].checked==false)
                {
                    alert("Please select the products available and click save");
                    return false;
                }
        }
    }
</script>
</head>

    <body>
     <form name="sform" method="post" action="Save_Products" onsubmit="javascript:return Validate();"> 
<b>          
            Brand Name:<font color="green">
            <% String brand_name=(String)session.getAttribute("brand_name");
       out.print(brand_name);%> 
        <c:set var="brand_name" value="brand_name" scope="session"  />
       </font></b>         
            <table>            
                <tr>                
                    <th> Products</th> 
                    <th> Description </th>
                </tr>
                <tr>
               <td> <b><%
      List<Products> pdts = (List<Products>) request.getAttribute("list");
      if(pdts!=null){
        for(Products prod: pdts){
           out.println("<input type=\"checkbox\" name=\"prod\" value=\""  + prod.getProductname() + "\">"  + prod.getProductname()+"<br>");
            } %> </b></td>   

            <td><%for(Products prod: pdts){
            out.println("<input type=\"text\" name=\"desc\" style=\"width:50px; height:22px\"/><br/>"); 
        } 

      }  
            %> </td>  

        </tr>
        <br/>
        <br/>
        <tr><td align="center">  <input type="submit" value="Save" name="save"/> </td></tr> 
            </table>
    </form>
    </body>
    </html>

函数验证()
{
var x[]=document.forms[“sform”][“prod”]值;
对于(var i=0;i


您的javascript Validate()函数看起来有逻辑错误

目前,一旦您发现一个复选框为false,您将返回false并通知用户。要获得所需的结果,您只应在检查所有复选框均为false后返回false(如果有一个复选框为true,则返回true)

下面的函数可能与您要查找的函数非常接近

function Validate() {
    var x[]=document.forms["sform"]["prod"].value;
    for(var i=0;i<x.length;i++){
        if(x[i].type=='checkbox'&&x[i].checked==true) {
            return true;
        }
    }
    alert("Please select the products available and click save");
    return false;
}
函数验证(){
var x[]=document.forms[“sform”][“prod”]值;
对于(var i=0;i,javascript Validate()函数看起来有逻辑错误

目前,一旦您发现一个复选框为false,您将返回false并通知用户。要获得所需的结果,您只应在检查所有复选框均为false后返回false(如果有一个复选框为true,则返回true)

下面的函数可能与您要查找的函数非常接近

function Validate() {
    var x[]=document.forms["sform"]["prod"].value;
    for(var i=0;i<x.length;i++){
        if(x[i].type=='checkbox'&&x[i].checked==true) {
            return true;
        }
    }
    alert("Please select the products available and click save");
    return false;
}
函数验证(){
var x[]=document.forms[“sform”][“prod”]值;

对于(var i=0;i为什么返回false?有些不相关,但不要在javascript问题中标记java,它们彼此无关。为什么返回false?有些不相关,但不要在javascript问题中标记java,它们彼此无关。这不起作用。是否有其他逻辑可用于验证复选框条目?我修复了函数中x的声明和初始化中的两个错误。希望它现在可以工作。它不工作。是否有其他逻辑可用于验证复选框条目?我修复了函数中x的声明和初始化中的两个错误。希望它现在可以工作。