我是新来的ASP并陷入了一个不寻常的问题。我使用一个提交按钮,并写了一些代码,以使数据库中的变化,然后在年底在代码之前执行的Response.Redirect
protected void SaveContentButton_Click(object sender, EventArgs e)
{
if (contentid == 0)
{
pageCntnt = new content();
}
//value from DropDownList.
pageCntnt.var1 = int.Parse(this.var1.SelectedValue);
pageCntnt.var2 = objCntnt.Text.Trim();
pageCntnt.var3 = objCntnt.Text.Trim();
//Save in the db.
pageCntnt.Save();
//Redirect to test.asp.
Response.Redirect("test.asp");
}
protected void Page_Load(object sender, EventArgs e)
{
contentstring = Request.QueryString["cntntstr"] != null ? Utilities.ToInt32(Request.QueryString["cntntstr"].ToString()) : 0;
if (contentstring > 0)
{
//Get the value from DB
pagecntnt = content.SelectByContentid(contentstring);
}
if (pagecontent != null && !Page.IsPostBack)
{
this.siteid.DataBind();
this.siteid.Items.FindByValue(pagecntnt.var1.ToString()).Selected = true;
TxtBx1.Text = pagecntnt.var2;
TxtBx2.Text = pagecntnt.var3;
}
}`
打开一个新的页面,我的按钮DEF是
<div class="floatright">
<asp:Button ID="SaveContent" runat="server" OnClick="SaveContentButton_Click" Text="Submit" />
<input type="button" value="Cancel" onclick="document.location.href='test.asp'" />
</div>
现在我的问题是,每当我点击提交按钮页面直接进入test.asp而不执行上面的代码。我通过在SaveContentButton_click
函数的各个位置放置ClientScript.RegisterStartupScript(this.GetType(), "On Save pagecontent Location_X", "alert('" + var2.Value + "');", true);
进行测试。每当我评论Response.Redirect时,上面的所有代码都会被执行,并且我得到所有警报,如果我取消注释,它会直接转到redirect.response,而不执行上面的任何代码,也不会显示任何警报,不会转到我将数据保存在数据库中的保存功能。
请帮忙。 在此先感谢。
感谢谢卡尔.....它的工作。 ...... – Prashant
欢迎@Prashant –