Здравствуйте (это копия моего поста в списке рассылки Seaside; сначала попробуйте в stackoverflow),
Как получить отображаемое отображение выпадающего списка выбора, чтобы показать обновленный выбор из другого сеанса в Firefox? (Я использую 3.6.13)
Эта проблема не появляется в Chrome, IE или Opera.
Вот сценарий: у меня есть объект домена с атрибутом, отображаемым в раскрывающемся списке. Некоторые другие сеансы обновляют атрибут. Я обновляю свой дисплей, но визуализированный выбор не меняется. Используя Firebug, сгенерированный HTML показывает обновленный выбор. Это могут быть базовые знания HTML, но должно ли отображаемое значение не обновляться, чтобы показать измененную «выбранную» опцию? Или значение предназначено для установки только на начальном отображении страницы, а затем только с помощью действия пользователя?
Пример: у меня есть демонстрационный компонент Seaside с переменной класса #testStateListSelection, которая выбрана равной 'one' в сеансе Seaside. Если я изменю значение на «три» в другом сеансе «Приморский», отображаемое значение останется «единым» в исходном сеансе после повторного рендеринга, даже если «выбранный» в сгенерированном HTML показывает «три».
renderSelectionListOn: html
html form: [
html select
list: #('one' 'two' 'three' 'four' 'five');
selected: self class testStateListSelection;
callback: [:value | self class testStateListSelection: value].
html break.
html submitButton
callback: [Transcript cr; show: self class testStateListSelection];
with: 'Save']
...the displayed value shows 'one', even though the HTML is...
<select name="1">
<option value="1">one</option>
<option value="2">two</option>
<option value="3" selected="selected">three</option>
<option value="4">four</option>
<option value="5">five</option>
</select>
Как получить в раскрывающемся списке выбранное значение для отображения «три»?
Кстати: все, что я знаю о HTML и поведении браузера, я узнал из кодирования Seaside, поэтому у меня может быть перекос ;-)
Спасибо за любую помощь.