-1
$(document).ready(function () {

    $(".test123").live("change", function () {
        var ddlBrand = "";
        ddlBrand = $('#<%= ddlBrand.ClientID %>').val();

        if (ddlBrand > 0) {
            return confirm('The values entered for this brand will reset. Are you sure you want to change the Brand.');
        });
    }
});
return false;
});

我对上述代码的问题是在取消确认框时我无法保留页面状态。同样对于第一个下拉选择,我不想要确认框。请帮忙。

4

1 回答 1

0

如果我正确理解您的问题,您不想确认 ddlBrand 是否第一次更改,如果确认调用,取消确认将您的 ddlBrand 值恢复为先前选择的值。你可以试试这个。

$(document).ready(function () {

    $(".test123").on("change", function (e) {
        e.preventDefault();
        var ddlBrand = $('#<%= ddlBrand.ClientID %>');
        var value = ddlBrand.val();
        var prevValue = ddlBrand.data('prev');

        if ( value > 0 && prevValue && prevValue  != 0) {
            if(confirm('The values entered for this brand will reset. Are you sure you want to change the Brand.')){
                ddlBrand.data('prev', value)
            }else{
                ddlBrand.val(prevValue )
            }
        }else{
            ddlBrand.data('prev', value)
        }
    });
});

并检查此演示

于 2012-11-29T08:26:43.157 回答