注册 登录
TechRepubil.com.cn探客网
最具实践价值的IT应用分享平台
返回列表 回复 发帖

asp中使用ajax取数据并更改提交,显示数据不能及时刷新的问题

举例如下:从新闻数据库中取出新闻数据,用select   框显示所有新闻标题的列表,然后在同一页面中显示修改新闻内容的Form,点击select框里的标题时,用ajax提取新闻数据,填充到标题,作者,内容等input框里,修改内容后提交。   
  上面我都做完了。   
   
  问题是:修改完提交后,我再点击该新闻标题,显示出来的内容,还是没有修改以前的。只有关闭IE窗口,再重新打开该页面,出来的信息才是正确的。   
  取信息的asp页面如下:   
  <%   
  action   =   Request.QueryString("action")   
  Select   Case   action   
  Case   "getSmallClassInfo"   
  returnString   =   getSmallClassInfo(Request.QueryString("SmallClassID"))   
  'Response.Charset   =   "gb2312"   
  Response.Write   escape(returnString)   
  Response.End   
  End   Select   
   
  Function   getSmallClassInfo(SmallClassID)   
  If   SmallClassID   =   ""   then   
  getSmallClassInfo   =   "参数错误!"   
  End   If   
   
  Set   Rs   =   server.CreateObject("ADODB.RecordSet")   
  rs.Source="select   *   from   "&   SmallClass   &"   where   SmallClassID   =   "   &   SmallClassID   
  rs.Open   rs.Source,conn,1,1   
  If   Not   Rs.eof   and   Not   Rs.bof   then   
  getSmallClassInfo   =   Rs("SmallClassName")&"=$="&Rs("SmallClassMusic")&"=$="&Rs("TitleColor")&"=$="&Rs("TitleSelectColor")&"=$="&Rs("ContentColor")   
  getSmallClassInfo   =   getSmallClassInfo&"=$="&Rs("TitleLeft")&"=$="&Rs("TitleTop")&"=$="&Rs("TitleWidth")&"=$="&Rs("TitleHeight")&"=$="&Rs("TitleCtrlLeft")&"=$="&Rs("TitleCtrlTop")   
  getSmallClassInfo   =   getSmallClassInfo&"=$="&Rs("PicLeft")&"=$="&Rs("PicTop")&"=$="&Rs("PicWidth")&"=$="&Rs("PicHeight")&"=$="&Rs("VideoIconLeft")&"=$="&Rs("VideoIconTop")   
  getSmallClassInfo   =   getSmallClassInfo&"=$="&Rs("ContentLeft")&"=$="&Rs("ContentTop")&"=$="&Rs("ContentWidth")&"=$="&Rs("ContentHeight")&"=$="&Rs("ContentCtrlLeft")&"=$="&Rs("ContentCtrlTop")   
  Else   
  getSmallClassInfo   =   "Not   Find!"   
  End   If   
  'getSmallClassInfo   =   returnString   
   
  End   Function   
  %>   
  初步怀疑可能是客户端的select框onclick事件被缓存。   
  我是直接返回字符串的,难道要用写入xml文件的方式吗?
加头标:   
  "Pragma:   no-cache\r\nCache-Control:   no-cache\r\nExpires:   -1\r\n"
多谢楼上提供思路   
  原来是取信息的asp页面的问题:加上   Response.Expires   =   0   就行了。   
  看来要多注意这些不常用的属性。。。^_^
返回列表