jquery - 仅从已更改的文本输入中收集值

标签 jquery forms textinput

我有一个html页面,在ajax调用后显示很多数据行,在每一行中我都输入具有不同值的文本,用户可以编辑此文本输入,然后按按钮执行一些计算操作。

如何使用 javascript(jQuery) 仅收集已更改的值,并将它们发送到 php 脚本。我搜索了一种简单的方法,不保存所有旧值的大数组然后与新值进行比较,有这样的解决方案吗?

最佳答案

您可以使用.data()函数保留其原始值的副本,然后在提交时将其与其值进行比较,以确保仅提交更改的值。

var inputs = $('input[type="text"]').each(function() {
    $(this).data('original', this.value);
});

$('#form').submit(function(){
    inputs.each(function() {
        if ($(this).data('original') !== this.value) {
            // Do something for the changed value
        } else {
            // And something else for the rest.
        }
    });
});

在此处查看演示:http://www.jsfiddle.net/yijiang/twCE9/

关于jquery - 仅从已更改的文本输入中收集值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4067180/

相关文章:

javascript - 如何禁用输入但不让文本变成灰色?

javascript - 添加和更改类

java - Spring Mvc : getting session attributes accross different methods in the same Controller

java - Play 2.4.6 框架中的表单未绑定(bind)

windows-phone-7 - 防止 Windows Mobile 7 上文本框焦点的屏幕缩放

javascript - 按键盘上的向左箭头时移至上一个输入?

javascript - 动画滚动脚本防止从外部链接访问本地 anchor 位置

c# - 以编程方式使用 POST 发送表单

javascript - 如何返回文本输入中字符串末尾的绝对像素坐标?

javascript - 选择焦点上文本输入的所有内容在 Microsoft Edge 中不起作用