用于显示或隐藏模态弹出窗口的单选按钮客户端单击事件未正确设置模态 属性

Radio Button client click event used to show or hide modal popup not setting the modal property correctly

我在 ASP.NET WebForm 页面上有 2 个单选按钮。我有一个模态弹出窗口,只有在从一个单选按钮转到另一个时才会显示,而不是其他方式。换句话说,这是我的选择:

  1. 如果单击单选按钮 1,则会显示模式弹出窗口。
  2. 如果当前选择了单选按钮 1 并单击了单选按钮 2,则不应显示模态弹出窗口。 我有一个 javascript 函数可以切换显示和隐藏,但是当执行 #2 逻辑时我会短暂地看到弹出窗口。这是js函数:
        $(function () {
            $('#<%=RadioButtonListServiceLevel.ClientID%>').click(function () {
                var CustomerCountry = $('#<%=HiddenFieldCustomerCountry.ClientID%>').val();
                var ServiceLevelSelected = $("#<%=RadioButtonListServiceLevel.ClientID%> input:checked").val();
                if ((CustomerCountry != "US" && CustomerCountry != "CA") && ServiceLevelSelected == "24") {
                    $('#InternationalServiceLevelModal').modal('show');
                } else {
                    $('#InternationalServiceLevelModal').modal('hide');
                }
            });
        });

知道为什么在执行 #2 中描述的操作时弹出模式对话框会短暂显示吗?

谢谢

我只是使用 'alert' 玩了一下,当我使用 'click' 事件时,就像你一样,警报触发了两次:我一点击 - 在按钮之前可见更改值,然后在按钮明显更改值后再次更改。

我将 'click' 更改为 'change' 并且警报只触发了一次。可以解决吗?

// changed 'click' to 'change'
$('#<%=RadioButtonListServiceLevel.ClientID%>').change(function () {