У меня есть div на странице, содержимое которого заменяется запросом AJAX, когда пользователь выбирает опцию из списка select
. Когда страница загружается, я запускаю команду, чтобы отключить функцию автозаполнения для всех элементов ввода текста страниц:
//Stop that pesky browser autocomplete
$('input[type=text]').attr("autocomplete", "off");
Однако, когда новые элементы появляются в div после вызова AJAX, эта строка кода не ссылается на них, потому что они не были частью исходного DOM (когда страница была загружена). Я попытался добавить строку автозаполнения в конец функции сообщения:
//AJAX Post request that changes the fields in the address div for each different country
$("div#address select#country").live("change", function() {
$.post("<?php print($_SERVER['PHP_SELF']); ?>", { country: $(this).val() }, function(data) {
$('div#address').html(data);
}, "text");
$('div#address input[type=text]').attr("autocomplete", "off");
});
Но по какой-то причине это не работает, и автозаполнение появляется при вводе текста в любое из полей адреса. Насколько мне известно, я не могу использовать .live () для выбора элементов ввода, потому что изменение атрибута не классифицируется как событие.
Так может ли кто-нибудь посоветовать мне, как изменить атрибуты вновь созданного элемента DOM?