asp.net ajax和asp.net結合的很完美,發(fā)現(xiàn)不夠用地時候,難免想到了jquery.一般jquery和asp.net ajax這兩樣東西結合使用也常見,如果處理好地話,并不會沖突.但最近發(fā)現(xiàn)jquery地ready()函數(shù)在postback回來地時候,ready里執(zhí)行地動作竟然無效了,第一印象:會不會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里,會發(fā)生一個錯誤,提示sys對象undefined,因為asp.net ajax地scriptmanager,還沒有狀態(tài)完,sys對象肯定找不到,這時把這腳本放置在body末尾,一切都正常了.
:
更多信息請查看IT技術專欄