Jquery不应用attr自动完成

时间:2013-11-19 09:13:33

标签: jquery autocomplete

我似乎无法解决的非常简单的问题。

我有这个jQuery片段:

jQuery(document).ready (function () {
    //get top search area working correctly
    var user = jQuery('label[for="user_login"]').first().text ();
    jQuery('label[for="user_login"]').hide();
    jQuery('#user_login').attr('placeholder', user);
    jQuery('.onpage_login .login-username input').attr('placeholder', user);
    jQuery('.onpage_login .login-username input').attr('autocomplete', 'off');

    var password = jQuery('label[for="user_pass"]').first().text ();
    jQuery('label[for="user_pass"]').hide();
    jQuery('#user_pass').attr('placeholder', password);
    jQuery('.onpage_login .login-password input').attr('placeholder', password);
    jQuery('.onpage_login .login-password input').attr('autocomplete', 'off');
    ...

由于某种原因,最后一行未被操作,但上面的占位符行是。查看Chrome和Firefox元素检查器中的相关html,显示应用了占位符,但自动填充不是。

此外,控制台不会报告任何错误。

jQuery是否不尊重自动完成属性?

(是的我知道这是实现自动完成的一种可怕方式,但我在此时使用的是闭源软件)

1 个答案:

答案 0 :(得分:0)

使用此

jQuery('.onpage_login .login-password input').live('focus',function(){
        $(this).attr('autocomplete', 'off');
    });

你也可以使用javascript ..

document.getElementsById("provideanid")[0].autocomplete="off"  //provide an id to ur password field

这是一个很好的小提琴链接。Fiddle