2010-01-25 90 views
0

选择选项更改我正在确认用户是否保存更改。如果用户选择确定,我将自动提交表单。 onchange =“if(confirm('Save?')){this.form.gridedit.click();}”。当用户选择取消时,它将填充最近选择的选项。我的问题是我必须填充旧值,如果用户从该确认消息中选择取消选项。请帮助在这个问题上任何一个。 谢谢确认保存期间下拉菜单

+0

您是否尝试过在onchange函数的else条件中返回false? – tfwright 2010-01-25 07:00:49

回答

1

试试这个,不要以为你可以完成它没有一些手动工作。

<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> 
+0

嗨, 感谢您的快速回复。我试过你的脚本。但是,只能填充最近选定的值,而不是旧值。 所以我只是重定向到同一页面,如果用户选择取消按钮,onchange =“if(confirm('Save?')){this.form.gridedit.click();} else {location.href ='cli_client .php?a = reset'}“就像这样 – 2010-01-25 12:55:55

0

如果输入值来自任何数据库,则在用户按下取消时再次将这些值加载到字段中。