碰到了一个奇怪的现象,急急急,求救

来源:百度知道 编辑:UC知道 时间:2024/06/06 23:40:55
是这样的,我填一下东西(比如注册)然后点提交,如果有内容填错了,就弹出警告框提示用户,是用下面的方法来弹出的,
public static void alert(string str, Page s)
{
ClientScriptManager CSM = s.ClientScript;
string ScriptName = "xxx";

if (!CSM.IsClientScriptBlockRegistered(ScriptName))
{
string strScript = "<script>alert('" + str + "')</script>";

CSM.RegisterStartupScript(s.GetType(), ScriptName, strScript);
}
}
然后再给一个textbox.text赋值,当警告框弹出的时候textbox里面是有值的,但是我点一下确定,textbox就空了,这是怎么回事。
如果我不弹出警告框的话,那么textbox里面是有值的。
求救求救
比如这样:
try
{}
catch
{
alert("错了",page);
textbox.text="a";
}
catch里面的两句换一下位置也不行

但是我看页面的源文件里面是有值的: <input name="ctl00$ContentPlaceHolder1$TextBox20" type="text" value="a" id="ctl00_Conte

我是ASP.NET的群主:
你这个问题其实是B/S的机制造成的
你填好表单,提交,先执行page_load,执行完你的事件后,然后返回,这时候你如果有js,它也返回,然后显示,就像你说的,弹出一个提示框。如果你按确定,这时候因为你是后台的脚步,页面会再次被提交上去,这时候表单已经没数据了,当然就变空了。

再给一个textbox.text赋值?能多给写代码吗?
alert执行后,就扔到前台一个alert js ,前台会感觉停止,但后台依然继续执行的
确实有点奇怪,你pageload方法里面有什么语句