【问题标题】:How to find change in value of elements in with particular class如何找到特定类中元素值的变化
【发布时间】:2017-02-09 05:09:39
【问题描述】:

我有一个编辑屏幕,其中有一个部分,其中有很多元素,如选择、输入等。现在我需要确定用户是否更改了使用 Jquery 已经存在的任何值。 我必须在提交表单时查找值是否发生变化。 考虑这样的 div,

<div class="row">
<div class="form-group required">
<label class="control-label">Port</label> 
    <select name="portId" id="portId">
        <option value="">Select</option>
        <option value="1">Chennai</option>
        <option value="2">Kochi</option>
    </select>
</div>
<div class="form-group required">
    <label class="control-label">Operator Name</label> 
    <input type="text" id="operatorName" name="operatorName">
</div>
<div class="form-group required">
    <label class="control-label">Attachment</label> 
    <input type="file" id="file" name="file">
</div>

【问题讨论】:

标签: jquery


【解决方案1】:

这些事件用于检查元素是否已被修改或脏。为了在 jQuery 中实现这一点,.change() 是可以绑定到元素的事件。

对于表单中的脏检查,here 是 NPM 插件。

【讨论】:

  • 我已经下拉,默认情况下选择了第一个选项,我将其更改为选项 2,然后我再次将其更改回选项 1,在这种情况下,提交时值不会更改,但会更改事件会将此视为更改,对吗?
【解决方案2】:

请分享您的代码 sn-p 它将帮助其他人清楚地理解您的问题并为您提供正确的答案。无论如何,这取决于您的情况,您需要在所有元素上触发更改事件,例如选择、输入并将旧值存储在数据属性 ex data-id='1' 中,并与数据值和更改值进行比较。

$( "input" ).on( "change", function() {

   if($(this).text() != $(this).data('id'))
   {
        alert('you have changed');
   }
});

【讨论】:

  • 如何在数据属性中存储旧值
  • 你能解释一下你想要做什么。正如我所说,请分享您的代码 sn-p 或其他内容以了解您的情况。通常在页面加载时,您可以为数据属性赋值。
  • 页面加载时为数据属性分配默认值
猜你喜欢
  • 1970-01-01
  • 2013-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-08
  • 1970-01-01
  • 2012-11-02
相关资源
最近更新 更多