При изменении опции выбора я подтверждаю пользователю, сохранять изменения или нет. Если пользователь выбирает OK , я отправляю форму автоматически, т.е. onchange="if(confirm('Сохранить?')){this.form.gridedit.click();} ". Когда пользователь выбирает отмену, он заполняет недавно выбранную опцию. Моя проблема в том, что я должен заполнить старое значение, если пользователь выбирает опцию «Отмена» из этого подтверждающего сообщения. Помогите пожалуйста в этом вопросе кто нибудь. Спасибо
Подтвердите сохранение во время изменения раскрывающегося списка
comment
Вы пытались вернуть false в условии else в вашей функции onchange?
- person tfwright   schedule 25.01.2010
Ответы (2)
Попробуйте это, не думайте, что вы можете сделать это без ручной работы.
<script type="text/javascript">
var ddHelper = {
previousIdx: null,
store: function(e, dd) {
this.previousIdx = dd.selectedIndex;
},
confirm: function(e, dd) {
if(!window.confirm('Save?')) {
window.setTimeout(function() { // Think you need setTimeout for some browsers
dd.selectedIndex = ddHelper.previousIdx;
}, 0);
}
}
};
</script>
<select onfocus="ddHelper.store(event, this)" onchange="ddHelper.confirm(event, this">
</select>
person
einarq
schedule
25.01.2010
Привет. Спасибо за быстрый ответ. Я попробовал ваш скрипт. Но по-прежнему заполняет только последнее выбранное значение, а не старое. поэтому я просто перенаправляюсь на ту же страницу, если пользователь выбирает кнопку отмены, onchange=if(confirm('Save?')){this.form.gridedit.click();} else {location.href='cli_client.php? a=reset'} вот так
- person Krishna Priya; 25.01.2010
Если входные значения поступают из какой-либо базы данных, загрузите их снова в поле, когда пользователь нажмет кнопку отмены.
person
Nazmul
schedule
25.01.2010