猿问

如何在jQuery中检索复选框值

如何在jQuery中检索复选框值

如何使用jQuery以获得复选框值,并立即将其放入文本区域?

就像这段代码:

<html>
  <head>
  </head>

  <body>
    <div id="c_b">
      <input type="checkbox" value="one_name" checked>
      <input type="checkbox" value="one_name1">
      <input type="checkbox" value="one_name2">
    </div>  

    <textarea id="t"></textarea>
  </body></html>

如果id="c_d"更新阿贾克斯,下面的阿尔特科尼图的代码不起作用。有什么好的解决办法吗?


慕婉清6462132
浏览 563回答 3
3回答

饮歌长啸

这里有一个有用的(见示例):&nbsp;function&nbsp;updateTextArea()&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;allVals&nbsp;=&nbsp;[]; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$('#c_b&nbsp;:checked').each(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allVals.push($(this).val()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$('#t').val(allVals); &nbsp;&nbsp;} &nbsp;$(function()&nbsp;{ &nbsp;&nbsp;&nbsp;$('#c_b&nbsp;input').click(updateTextArea); &nbsp;&nbsp;&nbsp;updateTextArea(); &nbsp;});更新几个月后,又提出了一个问题,即如果ID发生变化,如何保持上述功能。好的,解决方案归结为将updateTextArea函数映射为使用CSS类的泛型,并使用活动函数来监视DOM中的这些更改。

四季花海

还可以逗号分隔的字符串返回所有选中的复选框值。这也将使您在将它作为参数发送到sql时更容易。下面是一个示例,它返回所有选中的复选框值,这些复选框的名称为“chkboxName”,位于逗号单独的字符串中。这是javascriptfunction&nbsp;showSelectedValues(){ &nbsp;&nbsp;alert($("input[name=chkboxName]:checked").map( &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;()&nbsp;{return&nbsp;this.value;}).get().join(","));}以下是HTML示例<html> &nbsp;&nbsp;<head> &nbsp;</head> &nbsp;<body> &nbsp;&nbsp;<div> &nbsp;&nbsp;&nbsp;<input&nbsp;name="chkboxName"&nbsp;type="checkbox"&nbsp;value="one_name"&nbsp;checked> &nbsp;&nbsp;&nbsp;<input&nbsp;name="chkboxName"&nbsp;type="checkbox"&nbsp;value="one_name1"> &nbsp;&nbsp;&nbsp;<input&nbsp;name="chkboxName"&nbsp;type="checkbox"&nbsp;value="one_name2"> &nbsp;&nbsp;</div>&nbsp;&nbsp; &nbsp;</body> &nbsp;</html>

温温酱

你的问题相当含糊,但我认为这是你需要的:$(function()&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;$('input[type="checkbox"]').bind('click',function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($(this).is(':checked'))&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$('#some_textarea').html($(this).val()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;});});编辑:哦,好吧.。给你.。你以前没有HTML。不管怎样,是的,我以为你是想在被点击的时候把这个值放到文本框里。如果您希望在页面加载时将复选框的值放入文本区域(可能带有一个很好的逗号分隔),那么它将非常简单:$(function()&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;$('#c_b&nbsp;input[type="checkbox"]:checked').each(function()&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$('#t').append(',&nbsp;'+$(this).val()); &nbsp;&nbsp;&nbsp;&nbsp;});});编辑2正如人们所做的,您也可以这样做以快捷我所写的冗长的选择器:$('#c_b&nbsp;:checkbox:checked').each(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$('#t').append(',&nbsp;'+$(this).val());});..我完全忘了那条捷径。;)
随时随地看视频慕课网APP
我要回答