【问题标题】:Javascript OnChange for Checkbox复选框的 Javascript OnChange
【发布时间】:2014-01-03 11:25:13
【问题描述】:

我的表单中有 5 个复选框和 1 个文本区域,我想为所有这些挂钩 OnChange()。但是,无论出于何种原因,我在 Stack Overflow 上的任何发现似乎都没有被调用。

因为这是我找到的最基本的例子,这有什么问题?

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"/>
<script type="text/javascript">
$(document).ready(function()
{
    $("input").on("input", function()
    {
        alert("CHANGED");
    });
}
</script>

【问题讨论】:

  • 首先,它不适用于textareainput != textarea。试试$("input, textarea").on("change", function() { alert("changed"); })

标签: javascript jquery html forms onchange


【解决方案1】:

您应该处理更改事件:

$('input:checkbox,textarea').change(function () {
   alert('changed');
});

【讨论】:

  • textarea 呢?
  • @putvande 添加要触发功能的元素选择器
【解决方案2】:

oninput 事件仅在输入的 文本 更改时触发,因此不会为复选框触发。尝试绑定到复选框的 change 事件和 textareas 上的 input 事件:

$("textarea").on("input", yourFunction);
$("input:checkbox").on("change", yourFunction);

function yourFunction() {
    alert("CHANGED");
}

jsFiddle 演示了上述内容。

注意:此答案的不同之处在于alerttextarea 中立即触发,而不仅仅是元素的模糊。

附加说明 不支持oninput 事件

【讨论】:

  • 是否应该将其放入准备好的文档中?有些事情很奇怪,因为什么都没有发生。
  • @BrettPowell 是的,需要在文档中准备好它才能工作(如小提琴所示)
  • 成功了,谢谢。似乎我忘记了一个),它导致我的 Document.Ready 函数无法正常工作,哈哈。如何获取此函数内复选框的元素名称/值?
【解决方案3】:

为什么要为复选框绑定input 事件,它只对 textarea 触发?

你需要绑定change事件:

试试这个:

更新

$(document).ready(function()
{
    $("textarea").on("input", function(){
      alert("CHANGED");
    });

    $("input").on("change", function(){
        alert("CHANGED");
    });
});

Try in fiddle

【讨论】:

  • 不,两者都在一个“文件准备就绪”中(由于它们看起来像错误的对齐方式)。 :)
【解决方案4】:

复选框通常与同名属性一起使用,因此在选择器名称属性中会很有用

$("input[name='interests']").change(function(){
   /*some code*/
});

【讨论】:

    【解决方案5】:

    它不适用于 textarea 。您可以将所有单选按钮和 textarea 分配给同一类,然后

    $(".your_class_name").on("change", function()
    {
        alert("CHANGED");
    });
    

    【讨论】:

      猜你喜欢
      • 2011-09-15
      • 1970-01-01
      • 2014-01-01
      • 2018-05-17
      • 1970-01-01
      • 2016-05-28
      • 2020-02-05
      • 2021-08-25
      • 1970-01-01
      相关资源
      最近更新 更多