繁体   English   中英

更改后获取输入的默认值

[英]get default value of input after change

我想知道在更改.val()之后如何检索输入字段的默认值。 我的标记是使用.large.medium类的不同文本输入,并且我在每个字段中都有一个默认文本值。

我想做的是,当用户将focusin在该字段时,默认值消失了。 对该字段进行focusout ,将返回默认值。 现在,当用户已经输入内容时,即使在focusout ,该字段也会保留输入的值,但我无法使用的是,如果用户删除了其输入的文本并聚焦,则默认值应再次出现。

我的代码是:

        var $inputs = $('.large, .medium');
        var allowSaveVal = true;    

        $inputs.on('focusin', this, function() { 
             saveVal = $(this).val();
             if (allowSaveVal) $(this).val('');
        });

        $inputs.on('keydown', this, function() {
            allowSaveVal = false;
            $(this).css('color', '#000000');
        });

        $inputs.on('focusout', this, function() { 
            if($(this).val() == '') $(this).val(saveVal);
            if (allowSaveVal) $(this).val(saveVal);
        });

希望我的问题清楚。 谢谢!

您可以在HTML代码中使用“占位符”,而不是js或jquery。

<input type="text" placeholder="yourdefaultvalue" />

如果用户在输入和焦点输入中输入值,则该值不会消失。

您不必编写此代码,只需使用placeholder属性即可。

例:

<input type="text" placeholder="default text">

在进行任何更改之前,请将值保存在js代码中的变量中,以后便可以调用它。

var largeInit = $('.large').val();
var mediumInit = $('.medium').val();

如果我完全理解您的问题,则可以使用该html元素的占位符属性来实现

尝试:

<input type='text' placeholder='This your default value' />   

如果这样做有帮助,别忘了接受答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM