javascript - Cannot open a new window from inside update panel on linkbutton click - Stack Overflow

I have a link button inside UpdatePanel in a div popup. On Button_Click, I wish to open a new window th

I have a link button inside UpdatePanel in a div popup. On Button_Click, I wish to open a new window through javascript. I tried both ScriptManager.RegisterStartupScript as well as ScriptManager.RegisterClientScriptBlock, but Window doesn't open.

    <asp:UpdatePanel ID="UpdatePanel2" runat="server">

                                            <ContentTemplate> 
                <form class="message-form" action="#">
                    <fieldset>
    <asp:LinkButton ID="LinkButton1" runat="server" class="btn-facebook" Text="facebook" OnClick="LinkButton1_Click"></asp:LinkBu

tton>
                    <label for="TextBox1">Or send a message on Blissdate here:</label>
                <div class="textarea">
                    <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" Rows="10" Columns="30"></asp:TextBox><asp:Label ID="lbl" runat="server" />
                </div>
                <div class="btn-holder">
                    <asp:LinkButton ID="LinkButton2" runat="server" class="btn-send" Text="send" OnClick="LinkButton2_Click"></asp:LinkButton>
                </div>

            </fieldset>
        </form>

protected void LinkButton1_Click(object sender, EventArgs e)
    {
           DataRow[] row1 = ds.Tables[0].Select("FB_Id='" + HiddenField3.Value + "'");
           string url = row1[0].ItemArray[3].ToString();
           lbl.Text = url;
           //ScriptManager.RegisterClientScriptBlock(this, GetType(), "newPage", "window.open('" + url +');", true);
           ScriptManager.RegisterClientScriptBlock(this, GetType(), "newpage", "open('" + url + "');", true);
    }





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

        w.focus();

    }
</script>

Please tell me if something is wrong with the code..

I have a link button inside UpdatePanel in a div popup. On Button_Click, I wish to open a new window through javascript. I tried both ScriptManager.RegisterStartupScript as well as ScriptManager.RegisterClientScriptBlock, but Window doesn't open.

    <asp:UpdatePanel ID="UpdatePanel2" runat="server">

                                            <ContentTemplate> 
                <form class="message-form" action="#">
                    <fieldset>
    <asp:LinkButton ID="LinkButton1" runat="server" class="btn-facebook" Text="facebook" OnClick="LinkButton1_Click"></asp:LinkBu

tton>
                    <label for="TextBox1">Or send a message on Blissdate here:</label>
                <div class="textarea">
                    <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" Rows="10" Columns="30"></asp:TextBox><asp:Label ID="lbl" runat="server" />
                </div>
                <div class="btn-holder">
                    <asp:LinkButton ID="LinkButton2" runat="server" class="btn-send" Text="send" OnClick="LinkButton2_Click"></asp:LinkButton>
                </div>

            </fieldset>
        </form>

protected void LinkButton1_Click(object sender, EventArgs e)
    {
           DataRow[] row1 = ds.Tables[0].Select("FB_Id='" + HiddenField3.Value + "'");
           string url = row1[0].ItemArray[3].ToString();
           lbl.Text = url;
           //ScriptManager.RegisterClientScriptBlock(this, GetType(), "newPage", "window.open('" + url +');", true);
           ScriptManager.RegisterClientScriptBlock(this, GetType(), "newpage", "open('" + url + "');", true);
    }





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

        w.focus();

    }
</script>

Please tell me if something is wrong with the code..

Share Improve this question asked Apr 5, 2012 at 5:54 TaniTani 1152 silver badges16 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 6

Rename your open function to something else. If you launch the javascript console in your browser, you'll see numerous recursive calls to open. I'm not a javascript expert, but I believe you're running into a stack overflow exception.

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

 }
</script>

Then change your registration:

ScriptManager.RegisterClientScriptBlock(this, GetType(), "newpage", "customOpen('" + url + "');", true);

Check your browser popup blocker is enabled. Please disabled that it will work....

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1742416399a4439824.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信