【问题标题】:Stop ModalPopupExtender from coming up due to JavaScript由于 JavaScript,阻止 ModalPopupExtender 出现
【发布时间】:2011-05-19 12:30:52
【问题描述】:

使用 ajax (.net 2.0) 的 ASP.net 项目。 我有一个链接到图像按钮的 modalpopupextender:

<asp:ImageButton ID="ibStartNow" runat="server" ImageUrl="images/StartNow.gif" 
    ToolTip="Save expense report header and start now!" CausesValidation="False" 
    OnClientClick="CheckReason(); NoPrompt();" />

注意 OnClientClick 事件有一个名为 CheckReason 的 js 函数,该函数只是检查一个名为 reason 的文本框以查看是否有人输入了任何内容。如果他们没有,我不希望 ModalPopupExtender 实际打开。

这是 JavaScript 函数,虽然很丑 :)

function CheckReason()
{
    var txtReason = document.getElementById('txtReason');
    var txtReasonVal = txtReason.value;
    if (txtReasonVal.length > 0 && txtReasonVal != 'Enter the reason for creating this expense report...')
    { 
        return true;
    }
    else
    {
        txtReason.style.borderStyle='solid';
        txtReason.style.borderColor='red';
        return false;
    }
}

问题是即使我点击 else 并返回 false,模态弹出扩展器仍然会打开模态弹出窗口。我需要它,这样它就不会打开弹出窗口。

【问题讨论】:

    标签: javascript asp.net ajax


    【解决方案1】:

    看看有没有帮助

    OnClientClick="javascript:var ret = CheckReason(); NoPrompt(); return ret;"
    

    【讨论】:

    • 不,不这样做。我认为这更多是 modalpopupextender 工作方式的问题,因为您的代码没有任何问题。
    猜你喜欢
    • 1970-01-01
    • 2012-09-30
    • 1970-01-01
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-30
    • 2017-07-11
    相关资源
    最近更新 更多