如何在jQuery中恢复文本字段的默认值?

时间:2014-03-24 10:59:26

标签: javascript jquery forms restore

我有一个包含一些<input type="text">字段的表的页面。每个字段旁边都有一个按钮。我允许用户更改输入字段的文本。但是当用户单击输入字段旁边的按钮时,相应的输入字段的值需要恢复为默认值(上一个)。

我尝试使用index作为输入字段的名称创建一个数组。此数组可以存储默认值,并且可以轻松检索并还原到相应的字段。我尝试使用keyup(function()执行此操作,但我知道这会在每次按下键时触发。

这是我的HTML;

<input class="zx" type="text" name="qwer" value="Google" /><button class="cncl">X</button><br />
<input class="zx" type="text" name="qwer" value="Yahoo" /><button class="cncl">X</button><br />
<input class="zx" type="text" name="qwer" value="Bing" /><button class="cncl">X</button><br />
<input class="zx" type="text" name="qwer" value="Ask" /><button class="cncl">X</button><br />

Here 是小提琴。

如何将默认值恢复到字段?

3 个答案:

答案 0 :(得分:6)

试试这个,使用.attr('value')获取默认值:

$('.cncl').on('click', function () {
    $(this).prev().val($(this).prev().attr('value'));
});

DEMO

答案 1 :(得分:6)

您可以使用输入元素的defaultValue属性

$('.cncl').click(function(){
    $(this).prev().val(function(){
        return this.defaultValue;
    })
})

演示:Fiddle

答案 2 :(得分:1)

我过去做过类似的事情。我将默认值存储在html-tag本身的属性中。

<input class="zx" type="text" name="qwer" default-value="Google" value="Google" />

如果您想恢复它,可以执行

$('selector').val($('selector').attr('default-value'));