关于Response.Wirte()与UpdatePanel的问题

kendezhu 2011-03-26 10:59:20
updatepanel里有一个按钮button1, 其单击事件是
public void button1_click(*****)
{
第一行代码;
Response.Wirte("*********");
第三行代码;
}
这样一来,当我单击该按钮时,是没有反应的,这三行代码都不执行 如果改成:
public void button1_click(*****)
{
第一行代码;
Page.ClientScript.RegisterStartupScript(GetType,"123","<javascript代码>");
第三行代码;
}
这样一来, 结果是只执行第一行 和 第三行 代码

更郁闷的是,我有一个输出Excel文件的功能也是在updatepanel里执行
但由于向客户端输出Excel文件实际上也是靠Response.Wirte实现的: Response.OutputStream.Wirte()
所以也是没能在不刷新的条件下实现

请问各位大虾,应该怎么办 或者 出现这种现象的原因是什么
...全文
183 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianshao810 2011-03-27
  • 打赏
  • 举报
回复
Page.ClientScript.RegisterStartupScript(GetType,"123","<javascript代码>");

改成

ScriptManager.RegisterClientScriptBlock(UpdatePanel1, this.GetType(), "click", "alert('21')", true);
Corporal 2011-03-27
  • 打赏
  • 举报
回复
在Ajax中的不能再使用Response.Write方法。会有出错。

Ajax中使用脚本应该用ScriptManager.RegisterClientScriptBlock()。
我一般输出alert时写
ScriptManager.RegisterClientScriptBlock(button,button.GetType(),"","alert('aaaaa');",true);

都成功。

不知你的脚本是做什么的,你看看这样能不帮到你。
_程序员 2011-03-27
  • 打赏
  • 举报
回复
怎么没有alert('')?
_程序员 2011-03-27
  • 打赏
  • 举报
回复
楼主想干什么啊?弹出对话框?
kendezhu 2011-03-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wxr0323 的回复:]

Page.ClientScript.RegisterStartupScript(GetType,"123","<javascript代码>");

改成

ScriptManager.RegisterClientScriptBlock(UpdatePanel1, this.GetType(), "click", "alert('21')", true);


如果实在想要Res……
[/Quote]

貌似不行。。。
子夜__ 2011-03-26
  • 打赏
  • 举报
回复
Page.ClientScript.RegisterStartupScript(GetType,"123","<javascript代码>");

改成

ScriptManager.RegisterClientScriptBlock(UpdatePanel1, this.GetType(), "click", "alert('21')", true);


如果实在想要Response.Wirte("*********");

需要注册

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧