保留html输入的旧值

时间:2015-04-24 15:42:12

标签: jquery html html5 input

我需要获取输入框的旧值。

<input type ="text" name="" onFocus=(this.name=this.value) onchange='doSomething(this.value,this.name)'/>

这需要在两种情况下完成。

  1. onFocus
  2. 输入html元素呈现时
  3. 可以在自动对焦上完成;在下面的代码行是有效的。

    我需要获取输入框的旧值。

    <input type ="text" name="" onFocus=(this.name=this.value) autofocus=(this.name=this.value) onchange='doSomething(this.value,this.name)'/>
    

    如果我读取输入的名称attr,我是否会获得该值。

    $(input).attr("name");
    

    如果没有;还有其他任何帮助。

1 个答案:

答案 0 :(得分:0)

根据@ RoryMcCrossan的建议,您可以尝试使用jQuery .data()方法将值存储到焦点上的数据属性中,例如

HTML:

<input data-myoldvalue="" value="My First Value" />

使用Javascript:

jQuery("input").on("focus", function(e) {
   var elem = jQuery(e.target);
   console.log('oldval', elem.data('myoldvalue')); //Some debugging code
   elem.data('myoldvalue', elem.val());
   console.log('new-oldval', elem.data('myoldvalue')); //Some debugging code
});

然后您可以使用以下内容获取值:

jQuery(input).data("myoldvalue");