Confirm Save during onchange of drop down

2019-09-19 07:17发布

问题:

Onchange of select option I am confirming the user whether to save or not the changes. If user selects OK , I am submitting the form automatically.ie. onchange="if(confirm('Save?')){this.form.gridedit.click();} ". When user selects cancel it is populating the recently selected option. My problem is I have to populate the old value if user selects Cancel option from that confirmation message. Please help in this issue any one. Thanks

回答1:

Try this, don't think you can accomplish it without some manual work.

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


回答2:

If the input values come from any Database, load those again in the field when user press cancel.