无法使用 jQuery 更改输入的默认值属性

Can't change defaultValue attribute of input using jQuery

本文关键字:输入 默认值 属性 jQuery      更新时间:2023-09-26

我有一些 onfocus/onblur 处理程序,用于在聚焦时清除默认内容的字段,但前提是该值等于默认值(以便不删除任何用户输入)。

该字段还可以在输入之间切换。因此,用户可以单击一个按钮,而不是接受用户名,它会接受一个电子邮件地址。这将需要不同的默认值,例如"输入您的电子邮件地址"。需要更改实际属性属性defaultValue以允许我的焦点/模糊处理程序正常工作,使用如下所示的内容:

$('input#ident-field').prop('defaultValue', 'enter your email address');

这似乎不起作用,因为如果您在请求电子邮件地址时聚焦该字段,它不会清除它。

您的 Shoud 使用 HTML 5 属性placeholder

<input type="text" placeholder="Enter Your email address" / >

您可以使用聚焦和模糊功能来执行此操作:

$('input#ident-field').val("enter your email address");
// or $('input#ident-field').prop('defaultValue', 'enter your email address');
$('input#ident-field').focus(function(){
    $(this).val("");
});
$('input#ident-field').blur(function(){
    if($(this).val().trim() == "")
    {
        $(this).val("enter your email address");
    }
});