【发布时间】:2015-06-25 09:48:43
【问题描述】:
我有一个带有按钮的用户控件,单击按钮时我想使用ScriptManager 执行Javascript 弹出窗口并返回父页面执行response.redirect。但由于某种原因,我的Javascript 没有被执行。我注意到,如果我删除父级上的响应重定向,Javascript 执行工作正常。
下面是我的代码:
用户控制:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace RegisterDemo
{
public partial class RegisterUserControl : System.Web.UI.UserControl
{
public delegate void customHandler(object handler);
public event customHandler SendtoParent;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void usercontrolbutton_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this, GetType(), "validator", "alert('Error');", true);
SendtoParent(sender);
}
}
}
父页面:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace RegisterDemo
{
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
MyUserInfoBoxControl.SendtoParent += new RegisterUserControl.customHandler(onusercontrolevent_click);
}
protected void DemoButton_Click(object sender, EventArgs e)
{
//ScriptManager.RegisterStartupScript(this, GetType(), "validator", "alert('u click this button');", true);
}
protected void onusercontrolevent_click(object sender)
{
ScriptManager.RegisterStartupScript(this, this.Page.GetType(), "event", "alert('event completed');", true);
Response.Redirect("www.google.com");
}
}
}
有人可以帮我找出如何让我的UserControl 中的Javascript 执行吗?我在这里错过了什么?
【问题讨论】:
-
你不能这样做 - 重定向首先发生
-
我明白,但我的问题是为什么用户控件中的 javascript 语句没有执行?这个:ScriptManager.RegisterStartupScript(this, GetType(), "validator", "alert('Error');", true);
标签: javascript c# asp.net .net response