【问题标题】:Applying onChange event on a div for all input fields在所有输入字段的 div 上应用 onChange 事件
【发布时间】:2014-02-03 11:52:58
【问题描述】:

您好,实际上我有一个 div 标签,其中有多种形式。我想要的是在每个输入字段的 div 上应用 onChange 事件。目前我正在尝试这个

将表单类应用于每个表单并获取 onchange 事件

$('.form :input').change(function(e){
   console.log("Element changed");
});

但我无法获取更改了哪个字段以及更新的值是什么的信息。

那么我可以将它应用到 div 本身吗?如果不是如何获取更改的字段信息。

【问题讨论】:

    标签: javascript jquery html onchange


    【解决方案1】:

    试试这个:

    $(function(){
       $('.form :input').change(function(e){
          console.log($(e.target).attr('id'));
       });
    });
    

    这里e.target 是你当前的元素,它得到了change 的事件。


    根据您的评论:

    我们如何判断哪个字段发生了变化。

    您需要为您的所有input type text 分配一个唯一标识符:

    <input type='text' id='a'>
    <input type='text' id='b'>
       ..................
    

    然后使用这个:

    $('.form :input').change(function(e){
       $('#log').prepend('<p>Form changed ' + $(e.target).attr('id') + '</p>')
    });
    

    A demo of your fiddle here.

    【讨论】:

    • 请看看你能不能帮到我。
    • 我们怎么知道哪个字段被改变了。\
    • 没关系,很高兴能帮到你。
    • 最后一个问题我们如何从e中获取价值
    • $(e.target).val() 这将为您提供当前目标元素的值。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-08
    相关资源
    最近更新 更多