繁体   English   中英

如何使用 javascript 获取复选框的值?

[英]how do I grab the value of a checkbox using javascript?

我有一个 javascript 需要在选中时获取复选框的值,而在未选中时忽略其值。

现在我正在获取复选框的值:

$("input[name='tos']:checked").val()

当您选中该框并提交表单时,它会起作用,但如果您取消选中它并重新提交表单,则会给出“同意”的旧值。 所以我想知道如何仅在选中复选框时才获取复选框的值?

不要忘记未选中的复选框不会在表单提交中移动 您的代码没问题,但您可能将旧值存储在服务器端。

一种解决方法是您可以有一个<input type="hidden"/>在您选中/取消选中复选框时更改其值,并在服务器上读取此隐藏。 或者简单地说,询问复选框是否到达服务器,如果没有,则表示它未被选中。

希望这可以帮助。 干杯

http://jsfiddle.net/dqy5H/

这是一个示例小提琴。 对不起,糟糕的第一反应。

两件事,按从小到大的顺序排列:)

  1. 复选框永远不应返回“同意”值。 我希望你说错了。
  2. 我不确定您在那里使用的 jQuery 选择器实际上是否有效。 正如其他人提到的那样,它是但它只在检查时设置值。 哎呀,我的坏。 无论如何,我仍然建议为复选框提供一个 ID/唯一 class,然后执行以下操作:

    var 已检查 = $('#toscheckbox').val();

您可以添加 ID 而不会弄乱表单的提交数据,我更喜欢它们 - 名称是如此繁琐。

尝试给它一个 id 和 call.is(':checked') 就像在这篇文章中一样,看看它是否被选中。

http://jquery-howto.blogspot.com/2008/12/how-to-check-if-checkbox-is-checked.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM