Code Behind执行但不是预期的JavaScript

时间:2016-02-08 14:52:08

标签: javascript c# jquery asp.net twitter-bootstrap

我正在为我工​​作的公司工作,因此他们可以概述他们为公司储蓄和赚钱所需的活动。

它是用ASP.NET制作的,但我有一个小问题。当用户成功添加活动时,他们会被重定向到显示待处理活动的站点(因为他们需要在投入生产之前获得批准)。当他们到达新页面时,我想使用我放置在页面上的引导模式来告诉他们新活动的ID是什么但它不起作用(但是下面的工作在我使用它的其他页面上,虽然我没有在其他任何地方重定向后使用它。)

它会重定向到正确的页面,但不会显示警报。以下是LoadComplete事件触发时使用的代码:

void Pending_LoadComplete(object sender, EventArgs e)
{
    if (Request.QueryString.Count != 0)
    {
        String query = Request.QueryString.Get(0);
        String jsExec = Util.ModalAlert(query, "#info_modal", ".modal-body");
        ScriptManager.RegisterStartupScript(Page, GetType(), "ModalAlertShow", jsExec, false);
    }
}

Util.ModalAlert()方法:

public static String ModalAlert(String message, String modalId, String modalBodyId)
{
    StringBuilder sb = new StringBuilder();
    sb.AppendLine("<script type='text/javascript'>");
    if (modalBodyId.StartsWith("."))
    {
        sb.AppendLine("$('"+ modalId + " " + modalBodyId + "').html('" + message + "');");
    }
    else
    {
        sb.AppendLine("$('" + modalId + modalBodyId + "').html('" + message + "');");
    }

    sb.AppendLine("$('" + modalId + "').modal('show');");
    sb.AppendLine("</script>");
    return sb.ToString();
}

我在调试器中检查了代码实际运行的确如此,但是唉,Modal没有出现在我重定向到的页面上。模态体甚至没有应该包含在其中的文本。它只是空的。我怀疑当我触发该脚本时页面重新加载,或者LoadComplete不能像我认为的那样工作。

知道为什么吗?

0 个答案:

没有答案