1

我的页面中有一个弹出窗口,我试图在下拉列表中显示选定的索引更改事件。这是注册声明

ClientScript.RegisterClientScriptBlock(GetType(),"id", "ShowApplicationPopUp()",true);

这是我的javascript函数

function ShowApplicationPopUp() {

    $('#NewCustomerMask').show("slow");
    $('#NewCustomerApplicationPopUp').show("slow");

}

我的两个 div 最初都是通过 usingdisplay:none;语句隐藏的。问题是当我的下拉列表更改时,根本看不到弹出窗口。我尝试放置一个警报语句来检查是否调用了该函数,并触发了警报语句。关于我做错了什么的任何想法。欢迎任何建议。谢谢。

4

2 回答 2

5

当您使用RegisterClientScriptBlockJavascript 代码时,会在页面的早期插入,因此它将在元素加载之前运行。

改为使用RegisterStartupScript,它将代码放在表单的末尾。

于 2012-06-07T07:04:36.453 回答
0

我也无法让这段代码工作,但由于上述原因,我现在有了工作代码。请注意,我在 Ajax 更新面板中有一个链接按钮。

在我的 aspx.cs 页面后面的代码中是:

protected void OpenButton_Click(object s, EventArgs e)
{
    // open new window
    string httpLink = "../newWindow.aspx";      
    ScriptManager.RegisterStartupScript(this, GetType(), "script", "openWindow('" + httpLink + "');", true);
}

在我的 apsx 页面中,首先是指向 jQuery 源代码的链接,然后是 openWindow 函数的 JavaScript:

<script src="../js/jquery-1.10.1.js" type="text/javascript"></script>

<script type="text/javascript">
    function openWindow(url) {
        var w = window.open(url, '', 'width=1000,height=1000,toolbar=0,status=0,location=0,menubar=0,directories=0,resizable=1,scrollbars=1');
        w.focus();
    }
</script>

以及使这一切发生的链接:

<asp:LinkButton Text="Open New Window" ID="LnkBtn" OnClick="OpenButton_Click" runat="server" EnableViewState="False" BorderStyle="None"></asp:LinkButton>

我不是 jQuery 专家,必须将其中的一些归因于以下博客:

https://blog.yaplex.com/asp-net/open-new-window-from-code-behind-in-asp-net/

于 2014-10-12T10:30:18.397 回答