javascript - 如何获取选中的复选框值?

标签 javascript jquery forms

当用户提交表单时,我试图获取选定的复选框值及其旁边的隐藏字段值。

<form....>

<td><input type='checkbox' name='checkbox' value='1' ></input></td>
<input type='hidden' name='sid1' value='1'/>

<td><input type='checkbox' name='checkbox' value='1' ></input></td>
<input type='hidden' name='sid2' value='2'/>

<td><input type='checkbox' name='checkbox' value='1' ></input></td>
<input type='hidden' name='sid3' value='3'/>

我尝试:

$(document).ready(function(){
    if( $("input[name='checkbox']['checked']")) {
        $("input[name='checkbox']['checked']").each(function(){ 
            var test=$(this).val();
            alert(test);    
        })
    }
})

但它会给我所有的复选框值,即使它们没有被选中。任何人都可以帮助我解决这个问题吗?非常感谢!

最佳答案

这里是:

<HTML>
   <HEAD>
      <TITLE>Multiple-Select Check Boxes</TITLE>
      <SCRIPT LANGUAGE="JavaScript">
         function getSelected(opt) {
            var selected = new Array();
            var index = 0;
            for (var intLoop = 0; intLoop < opt.length; intLoop++) {
               if ((opt[intLoop].selected) ||
                   (opt[intLoop].checked)) {
                  index = selected.length;
                  selected[index] = new Object;
                  selected[index].value = opt[intLoop].value;
                  selected[index].index = intLoop;
               }
            }
            return selected;
         }

         function outputSelected(opt) {
            var sel = getSelected(opt);
            var strSel = "";
            for (var item in sel)       
               strSel += sel[item].value + "\n";
            alert("Selected Items:\n" + strSel);
         }
      </SCRIPT> 
   </HEAD>
   <BODY> 
      <FORM NAME="ColorSelector">
         <INPUT TYPE=CHECKBOX NAME="color" VALUE="Red">Red
         <INPUT TYPE=CHECKBOX NAME="color" VALUE="Navy" CHECKED>Navy
         <INPUT TYPE=CHECKBOX NAME="color" VALUE="Black">Black
         <INPUT TYPE=CHECKBOX NAME="color" VALUE="White" CHECKED>White
         <INPUT TYPE=BUTTON VALUE="Selected Check Box Items" 
            ONCLICK="outputSelected(this.form.color);">
         <P>
         <SELECT NAME="multistore" SIZE=3 MULTIPLE>
            <OPTION VALUE="Computer" SELECTED>Computer</OPTION>
            <OPTION VALUE="Bookstore">Book Store</OPTION>
            <OPTION VALUE="MailOrder" SELECTED>Mail Order</OPTION>
         </SELECT>
         <INPUT TYPE=BUTTON VALUE="Selected List Items" 
            ONCLICK="outputSelected(this.form.multistore.options)">
      </FORM>
   </BODY>
</HTML>

关于javascript - 如何获取选中的复选框值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9604873/

相关文章:

javascript - try catch javascript 意外标识符

asp.net - 网页中服务器和客户端之间的实时连接

javascript - 如果我使用 jQuery 或 javascript 在一个搜索栏中输入相同的单词两次,请向我发送一条消息

php - 使用屏蔽 URL 预填充表单

javascript - 使用 expo 和 @react-native-community/async-storage

javascript - 我的时钟不工作了。为什么 InnerHTML 不更新?

javascript - 如何使用phonegap在android中实现加载更多功能?

jquery - 如何正确覆盖 "jQuery Unobtrusive Validation"以用于 css bootstrap?

jquery mobile从输入按钮中删除ajax调用

php - 将表单数据插入数据库的更短方法?