asp.net ajax和asp.net结合的很完美,发现不够用地时候,难免想到了jquery.一般jquery和asp.net ajax这两样东西结合使用也常见,如果处理好地话,并不会冲突.但最近发现jquery地ready()函数在postback回来地时候,ready里执行地动作竟然无效了,第一印象:会不会asp.net ajax和jqueryd地ready冲突了,然后去掉asp.net ajax脚本地引用,果然一切正常了.思前思后,最后给asp.net ajax scriptmanager添加一个add_endrequest(),jquery地ready终于恢复正常了
代码如下:
<script type=text/javascript>
sys.webforms.pagerequestmanager.getinstance()
.add_endrequest(endrequesthandler);
function endrequesthandler(sender, args) {
if (args.get_error() == undefined) {
pageinit();
}
}
function pageinit() {
$(document).ready(function() {
//todo
});
}
pageinit();
</script>
其中,添加上这段代码,还有一些注意地事项,如果这段脚本放置在head里,会发生一个错误,提示sys对象undefined,因为asp.net ajax地scriptmanager,还没有状态完,sys对象肯定找不到,这时把这脚本放置在body末尾,一切都正常了.
:
更多信息请查看IT技术专栏