【问题标题】:How do I reset input autocomplete styles?如何重置输入自动完成样式?
【发布时间】:2016-03-11 19:09:44
【问题描述】:

我有一个通过 JavaScript 进行的简单 Bootstrap 表单。单击提交按钮后,它将继续其数据并重置输入值而不重新加载页面:

if( json.success ) {
  $('#form_sendemail').find('.form-control').val('');
}

问题在于,如果有任何自动完成的表单域(在 Chrome 中以黄色突出显示),即使在表单已发送且表单域被清除后,它们仍会保持突出显示。如何在不重新加载页面的情况下重置这些样式? (将 background-color 设置为 !important 没有帮助)。

【问题讨论】:

  • 我认为您应该尝试使用 .reset() 重置您的表单,一旦您的表单提交成功。
  • @Nimmi,这行得通。谢谢!

标签: javascript jquery html css twitter-bootstrap


【解决方案1】:

试试reset函数:

$.ajax({
    //...
    success: function (data, status) {
        document.getElementById('yourFormID').reset();
    }
});

<form id="yourFormID"></form>

编辑:

JQuery(真棒):

$.ajax({
    //...
    success: function (data, status) {
        $('#yourFormID')[0].reset();
    }
});

【讨论】:

  • 既然你用的是JQuery,$('#yourFormID')[0].reset();
  • $('#yourFormID')[0].reset();实际工作。谢谢!
  • 很高兴它有帮助,我已经编辑了未来问题的答案
【解决方案2】:

你可以试试这个

对于 Chrome

input:-webkit-autofill {
    background-color: #FAFFBD !important;
color: #2a2a2a !important;
}

脚本

$("input[type='text']").bind('focus', function() {
   $(this).css('background-color', '#fff');
   $(this).css('color', '#000');
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-09
    • 2014-11-14
    • 2020-05-30
    • 2019-12-01
    • 2015-04-01
    • 2020-08-13
    • 1970-01-01
    • 2021-11-25
    相关资源
    最近更新 更多