在我一直在维护的巨大的MVC 1.0应用程序中,我们决定要为应用程序中的每个输入字段关闭自动完成功能。成千上万。
我试过了:
$(document).ready(function () {
$('input[type="text"]').attr('autocomplete', 'off');
});
但我遇到的问题是,在某些地方,我有部分内容通过AJAX请求并通过.load
加载。我尝试在ajaxComplete之后设置自动完成功能,但这也不起作用,因为.load直到ajax请求完成后才会发生。是否存在我可以关注的全局.loadComplete
类型的事件,因此我不必在每个load
回调中启动自动完成功能?
以下是我加载部分的方法:
$('#PaymentContent').load('/Payment/ACHPartial',function() {
....
})
我之前尝试过ajaxsuccess:
$(document).ajaxSuccess(function () {
$('input[type="text"]').attr('autocomplete', 'off');
});
答案 0 :(得分:0)
您可以尝试为ajaxComplete事件附加一个全局处理程序,获取即将加载的内容并对其进行操作:
$( document ).ajaxComplete(function(event,xhr,settings) {
xhr.responseText =
$(xhr.responseText).filter("input").attr('autocomplete', 'off').get(0);
});
这样,您可以在将内容加载到html之前对其进行操作。虽然没经过测试!
希望它有所帮助!