在Chrome浏览器中,单击禁用的按钮时会弹出Modal弹出窗口

时间:2010-10-01 09:09:36

标签: asp.net ajax google-chrome

我有一个页面,其中有一个模式弹出窗口,单击链接按钮时会显示该页面。我已禁用链接按钮,但单击禁用的链接按钮时,也会出现模式弹出窗口。除了Chrome之外,它在所有其他浏如何防止在禁用链接按钮(目标控件)时显示模式弹出窗口?

代码如下:

 <cc1:ModalPopupExtender ID="ModalPopupExtender" runat="server" BackgroundCssClass="modalBackground"
            CancelControlID="imgbtnCancel" DropShadow="true" PopupControlID="panelTenant"
            TargetControlID="lnkbtnTenant">
        </cc1:ModalPopupExtender>
        <asp:Panel ID="panelTenant" CssClass="modalPopup" Style="display: none" Width="400px"
            runat="server">
        <asp:Button ID="btnTest" Text="Test" runat="server"></asp:Button>
        </asp:Panel>

在代码的page_load事件中,我检查了一个条件并在条件失败时禁用了链接按钮。

if (ds.Tables[3].Rows.Count > 0)
            {
                lnkbtnTenant.Enabled = true;
                lnkbtnTenant.Text = "Click to view Tenant Details";               
            }
            else
            {
                lnkbtnTenant.Enabled = false;
                lnkbtnTenant.Text = "Tenant Details not available.";                
            }

<小时/> 已修改以包含OP在评论中发布的生成的HTML:

这是模式弹出窗口的结果HTML:

<div id="ctl00_head_panelTenant" class="modalPopup" style="width:400px;display: none">
     <input type="submit" name="ctl00$head$btnTest" value="Test" id="ctl00_head_btnTest"/>
</div>

这是禁用按钮的结果HTML:

<a id="ctl00_head_lnkbtnTenant" disabled="disabled" class="para1">Tenant Details not available.</a>

1 个答案:

答案 0 :(得分:0)

看起来ASP.NET将disabled =“disabled”属性放入锚点,这是无效的HTML。 Chrome会忽略此非标准属性,因此您仍然可以点击该链接。