#javascript #html #ajax #google-chrome #autocomplete
#javascript #HTML #ajax #google-chrome #автозаполнение
Вопрос:
У меня есть простая форма, и я хочу предоставить пользователю возможность выбирать ранее опубликованные данные, используя autocomplete="on"
. Я отправляю форму с помощью AJAX. Я использую Google Chrome 87.0.4280.88 64 bit
. Вот код, который у меня есть:
<form action="/Debug" method="POST" id="myForm">
Brand: <input type="text" name="brand" autocomplete="on" /><br />
Model: <input type="text" name="model" autocomplete="on" /><br />
<button type="submit">Submit</button>
</form>
<script>
$(document).ready(function () {
$('#myForm').on('submit', function (e) {
e.preventDefault();
$.ajax({
url: '/Debug',
type: 'POST',
cache: false,
success: function (data) {
console.log('data', data);
}
});
});
});
</script>
ЖИВАЯ ДЕМОНСТРАЦИЯ: https: //jsfiddle.net/jcuzfo69/
Когда я отправляю форму в первый раз, опубликованные данные сохраняются и отображаются в раскрывающемся списке автозаполнения. Но, когда я ввожу новые данные и снова отправляю форму, данные не сохраняются браузером.
Данные для первой отправки:
Автозаполнение после первой отправки:
Данные для второй отправки:
Автозаполнение после второй отправки:
Я ожидал бы увидеть Volkswagen в списке брендов после появления второй отправки. Почему он не сохраняется браузером?
Комментарии:
1. Не уверен, что происходит на вашей стороне, но это работает хорошо prnt.sc/wdnfq6
2. Можете ли вы опубликовать ссылку на фрагмент кода вместо изображения?
Ответ №1:
Попробуйте это, используя кнопку run snipets:
$(document).ready(function () {
$('#myForm').on('submit', function (e) {
e.preventDefault();
$.ajax({
url: '/Debug',
type: 'POST',
cache: false,
success: function (data) {
console.log('data', data);
}
});
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form action="/Debug" method="POST" id="myForm">
Brand: <input type="text" name="brand" autocomplete="on" /><br />
Model: <input type="text" name="model" autocomplete="on" /><br />
<button type="submit">Submit</button>
</form>
Комментарии:
1. Я также попробовал свой сценарий с вашим фрагментом — сохраняются только данные из первой отправки.
2. Может ли это быть связано с браузером? Какой браузер и версию вы используете?
3. Я использую точно такую же версию, но она не работает для меня. Но это работает в Firefox.
4. Не уверен, почему в автозаполнении не отображаются другие отправленные значения. это странно. возможно, это кеш или что-то в этом роде, вы можете попробовать после очистки всего этого. надеюсь, это сработает