ASP.NET AJAX常见问题整理


======================================================
注:本文源代码点此下载
======================================================

1.asp.net ajax-enabled页面引用脚本出现的问题

1 head runat="server">

2title>untitled page/title>

3script type="text/javascript" src="js/gridviewjs.js"/>

4link type="text/css" rel="stylesheet" href="css/gridviewcss.css" />

5 /head>

我原来的js代码是这样的,结果导致画面上有scriptmanager的时候一直发生this.form为null的错误。

原因是类似下面的脚本采用了封闭式的标签声明,而

script type="text/javascript" src="scripts/somefile.js"/>

而将标签声明为开放式的形式才有助于ajax库判断引用javascript的结尾。

script type="text/javascript" src="scripts/somefile.js">script>

2.asp.net ajax中的控件id问题

因为使用ajax容器控件会导致scriptmanager直接在你所使用的空间前面添加前缀而改变,如原来控件为extendgridview1,

而在tab容器中,则变为tbcmain_tbporgnz_extendgridview1。而这个id使用的场景仅限于非.net页面事件相关的普通

javascript函数,如document.getelementid方法中你可以使用这个id在客户端找到该控件。

但在服务器端进行findcontrol或者在客户端使用__dopostback函数的时候一定要使用把"_"转换成"$"后的控件id,即:

tbcmain_tbporgnz_extendgridview1 -> tbcmain$tbporgnz$extendgridview1

在服务器端我们可以使用string.replace函数直接进行转换。在javascript中比较汗颜的是string.replace函数一次只转换一个,

所以我写了一个javascript函数来进行客户端的转换。

1 function getajaxid(id)

2 {

3while(id.indexof('_')>-1)

4{

5id=id.replace('_','$');

6}

7return id;

8 }


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值