Ответ 1
Я нашел простую обходную проблему, создав скрытый текст и перед отправкой или изменением установил его на выбранное значение.
Версия Chrome (тип около: Версия 28.0.1491.0 canary и 26.0.1410.65 Google Chrome): Операционная система (Mac OS X Mountain Lion): Проблема возникает только с Chrome Canary и обычным Google Chrome. Нет проблем с последними версиями Firefox, Safari и IE9 (Windows).
В приведенном ниже коде все значения stateBill изменяются так же, как текстовые значения.
Затем отправьте его на другую страницу и нажмите кнопку "Назад" на странице браузера. Выбранная опция НЕ отображается (т.е. Она отображается пустым) в раскрывающемся списке, хотя источник html все еще показывает, что она выбрана.
Если я не выполняю функцию jquery и не отправляю и не нажимаю "Назад" в браузере, выбранный текст опции отображается в раскрывающемся списке правильно.
Возможно, его jquery на chrome или, возможно, его javascript на проблеме Chrome.
Любые идеи?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"
>
<html>
</head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>
<body>
<form target="_self" action="http://google.com">
Click Submit. When it goes to google, Click Back button of browser.<br/>
Will see that drop down is empty!
<!-- Abbreviated states list -->
<select name="stateBill" class="required" id="stateBill">
<option value="">- Select -</option>
<option value="1">Alabama</option>
<option value="2">Alaska</option>
<option value="3" >American Samoa</option>
<option value="4" selected="selected">Arizona</option>
<option value="5">Arkansas</option>
</select>
<input type="submit" value="Submit">
<form>
</body>
<script>
$(function(){
// Change all state values to be the same as the state text.
var text;
$("#stateBill option:gt(0)").each(function(i,j){
text=$(j).text();
$(j).val(text);
});
})
</script>
<html>
Я нашел простую обходную проблему, создав скрытый текст и перед отправкой или изменением установил его на выбранное значение.
У меня была такая же проблема, и я столкнулся с этой проблемой при поиске в Google. Для кого-то еще спотыкаясь на это: я исправил проблему, установив "autocomplete =" off "в форме. Конечно, это может быть нежелательно для всех ситуаций.
Я запускаю Chrome 30.0.1599.101 на OSX 10.9. Веб-сайт построен с использованием Wicket framework (который использует jQuery для AJAX).