首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#.net 2005 web开发遇到的有关问题,调用javascript函数的有关问题。如下

2011-12-25 
C#.net 2005 web开发遇到的问题,调用javascript函数的问题。如下:我在aspx声明这样的函数。functionSetImage

C#.net 2005 web开发遇到的问题,调用javascript函数的问题。如下:
我在aspx声明这样的函数。
function   SetImage(ImageObj){
if(ImageObj.src= "0.gif "){
ImageObj.src= "1.gif "
}else{
ImageObj.src= "0.gif "
}
}

在cs文件中做了一个定时事件,该事件执行如下语句:
Page.Response.Write( " <script   language=javascript> SetImage(imgObj) </script> ");

报错如下:
响应在此上下文中不可用。

[解决办法]
if(ImageObj.src= "0.gif "){
->
if(ImageObj.src== "0.gif "){
[解决办法]
既然用js实现了转换图片,也就直接在js中定时好了,^_^,setTimeOut ,setInterval
[解决办法]
用这个
if(!Page.IsStartupScriptRegistered( "script "))
{
Page.RegisterStartupScript( "script ", " <script language=javascript> SetImage(imgObj) </script> ");
}


Page.Response.Write( " <script language=javascript> SetImage(imgObj) </script> ");是不行的,因为Page.Response.Write时,页面还是空白,没有任何元素,包括你声明的函数
[解决办法]
客户端都没有更新,怎么可能会更新图片呢?

[解决办法]
估计要用ajax吧。
[解决办法]
做到服务器端的定时不可能有效的,BS机制的原理是:客户端浏览器申请-> 服务器端响应-> 客户端浏览器结束访问并显示.在你的定时器第X次(视客户端网速而定)触发的时候,客户端那早就结束访问了,你那所有的Response客户端都不会接收,连接早就断开了,这可不是CS程序!
[解决办法]
那用ajax吧 还是把定时器写在UI上,定时向server提交请求查看是否有新消息,根据返回值不同来处理 注意不可根据服务器端变量flagstate的值

热点排行