前沿拓展:
updatepanel
只能在 .net 3.5 及更高版本使用 UpdatePanel。
所在程序集為 System.Web.Extensions.dll
項(xiàng)目中使用到了 updatePanel 和jquery-easyui 。
使用updatepanel的好處自然是頁(yè)面不刷新,用戶感覺(jué)比較好,同時(shí)也減少了一部分?jǐn)?shù)據(jù)量的傳輸。
使用easyui 的好處除了界面還不錯(cuò)之外,也因?yàn)槭褂梅奖恪?/p>
<div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇">…</div> <div title="返回">…</div></div>只要給他定義個(gè)相應(yīng)的class 就能實(shí)現(xiàn)各種效果。
但是,把它放在updatepanel里面,且不是首次就讓他顯示出來(lái)的話就出故障了。
例如:
代碼<asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> <asp:View ID="View2" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> </asp:MultiView>在multipleView里面定義兩個(gè)一樣的view,內(nèi)容也一樣。并把 MultiView1放到updatepanel里面。
第二設(shè)置他顯示第一個(gè)view
MultiView1.ActiveViewIndex =0;瀏覽一下。顯示正常。但是當(dāng)我們改變view的顯示時(shí),例如把上面的改成 MultiView1.ActiveViewIndex =1;那么第二個(gè)veiw的效果就全無(wú)了。
到j(luò)query.easyui.min.js 里找原因??吹搅诉@么一句
r=$(".easyui-tabs",_1ec);if(r.length){r.tabs();大概就是在網(wǎng)頁(yè)加載完后,尋找class定義為easyui-tabs 的層。并把效果附加給他。
那么可以想象,當(dāng)頁(yè)面加載時(shí),我們顯示的是第一個(gè)view,那么js就找到view里的層,并賦予其效果。
第二我們?cè)趗pdatepanel里更新了顯示的view,內(nèi)容雖然切換到了第二個(gè)view了。但是頁(yè)面沒(méi)有重新加載,上面的js代碼沒(méi)有對(duì)新的view執(zhí)行改變。
所以決策就是當(dāng)updatepanel回發(fā)后重新執(zhí)行js代碼。
在頁(yè)面定義一個(gè)重新綁定的函數(shù)。
function EndRequestHandler() { $(".easyui-tabs").tabs(); }再定義一個(gè)**。 function reload() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); }add_endRequestPageRequestManager 類(lèi)是一個(gè)管理瀏覽器中服務(wù)器 UpdatePanel 控件的部分頁(yè)更新。此外,還定義一些屬性、**和方法,用以通過(guò)客戶端腳本對(duì)網(wǎng)頁(yè)進(jìn)行自定義。通過(guò)調(diào)用 getInstance 方法來(lái)得到 PageRequestManager 類(lèi)的實(shí)例。第二通過(guò) add_endRequest 方法來(lái)綁定 endRequest **(異步回發(fā)完成,并且控制權(quán)返回到瀏覽器之后引發(fā))。這樣以后,每次updatepanel發(fā)生回調(diào)后,都會(huì)觸發(fā)EndRequestHandler()函數(shù)。重新綁定一次效果。$(document).ready(function() { reload(); })失效問(wèn)題就解決了。
原文:http://www.cnblogs.com/topdog/archive/2010/04/11/1709413.html
拓展知識(shí):
updatepanel
其實(shí)分兩個(gè)UpdatePanel就可以了,第一個(gè)VIEW里一個(gè),第二個(gè)VIEW里也是一個(gè).
另外下面部分顯示不顯示,可以用靜態(tài)的JS來(lái)做不一定要回發(fā)的.
如果不明白,把你的頁(yè)面代碼放出來(lái).
updatepanel
百度HI我
本回答被提問(wèn)者采納
前沿拓展:
updatepanel
只能在 .net 3.5 及更高版本使用 UpdatePanel。
所在程序集為 System.Web.Extensions.dll
項(xiàng)目中使用到了 updatePanel 和jquery-easyui 。
使用updatepanel的好處自然是頁(yè)面不刷新,用戶感覺(jué)比較好,同時(shí)也減少了一部分?jǐn)?shù)據(jù)量的傳輸。
使用easyui 的好處除了界面還不錯(cuò)之外,也因?yàn)槭褂梅奖恪?/p>
<div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇">…</div> <div title="返回">…</div></div>只要給他定義個(gè)相應(yīng)的class 就能實(shí)現(xiàn)各種效果。
但是,把它放在updatepanel里面,且不是首次就讓他顯示出來(lái)的話就出故障了。
例如:
代碼<asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> <asp:View ID="View2" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> </asp:MultiView>在multipleView里面定義兩個(gè)一樣的view,內(nèi)容也一樣。并把 MultiView1放到updatepanel里面。
第二設(shè)置他顯示第一個(gè)view
MultiView1.ActiveViewIndex =0;瀏覽一下。顯示正常。但是當(dāng)我們改變view的顯示時(shí),例如把上面的改成 MultiView1.ActiveViewIndex =1;那么第二個(gè)veiw的效果就全無(wú)了。
到j(luò)query.easyui.min.js 里找原因??吹搅诉@么一句
r=$(".easyui-tabs",_1ec);if(r.length){r.tabs();大概就是在網(wǎng)頁(yè)加載完后,尋找class定義為easyui-tabs 的層。并把效果附加給他。
那么可以想象,當(dāng)頁(yè)面加載時(shí),我們顯示的是第一個(gè)view,那么js就找到view里的層,并賦予其效果。
第二我們?cè)趗pdatepanel里更新了顯示的view,內(nèi)容雖然切換到了第二個(gè)view了。但是頁(yè)面沒(méi)有重新加載,上面的js代碼沒(méi)有對(duì)新的view執(zhí)行改變。
所以決策就是當(dāng)updatepanel回發(fā)后重新執(zhí)行js代碼。
在頁(yè)面定義一個(gè)重新綁定的函數(shù)。
function EndRequestHandler() { $(".easyui-tabs").tabs(); }再定義一個(gè)**。 function reload() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); }add_endRequestPageRequestManager 類(lèi)是一個(gè)管理瀏覽器中服務(wù)器 UpdatePanel 控件的部分頁(yè)更新。此外,還定義一些屬性、**和方法,用以通過(guò)客戶端腳本對(duì)網(wǎng)頁(yè)進(jìn)行自定義。通過(guò)調(diào)用 getInstance 方法來(lái)得到 PageRequestManager 類(lèi)的實(shí)例。第二通過(guò) add_endRequest 方法來(lái)綁定 endRequest **(異步回發(fā)完成,并且控制權(quán)返回到瀏覽器之后引發(fā))。這樣以后,每次updatepanel發(fā)生回調(diào)后,都會(huì)觸發(fā)EndRequestHandler()函數(shù)。重新綁定一次效果。$(document).ready(function() { reload(); })失效問(wèn)題就解決了。
原文:http://www.cnblogs.com/topdog/archive/2010/04/11/1709413.html
拓展知識(shí):
updatepanel
其實(shí)分兩個(gè)UpdatePanel就可以了,第一個(gè)VIEW里一個(gè),第二個(gè)VIEW里也是一個(gè).
另外下面部分顯示不顯示,可以用靜態(tài)的JS來(lái)做不一定要回發(fā)的.
如果不明白,把你的頁(yè)面代碼放出來(lái).
updatepanel
百度HI我
本回答被提問(wèn)者采納
前沿拓展:
updatepanel
只能在 .net 3.5 及更高版本使用 UpdatePanel。
所在程序集為 System.Web.Extensions.dll
項(xiàng)目中使用到了 updatePanel 和jquery-easyui 。
使用updatepanel的好處自然是頁(yè)面不刷新,用戶感覺(jué)比較好,同時(shí)也減少了一部分?jǐn)?shù)據(jù)量的傳輸。
使用easyui 的好處除了界面還不錯(cuò)之外,也因?yàn)槭褂梅奖恪?/p>
<div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇">…</div> <div title="返回">…</div></div>只要給他定義個(gè)相應(yīng)的class 就能實(shí)現(xiàn)各種效果。
但是,把它放在updatepanel里面,且不是首次就讓他顯示出來(lái)的話就出故障了。
例如:
代碼<asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> <asp:View ID="View2" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> </asp:MultiView>在multipleView里面定義兩個(gè)一樣的view,內(nèi)容也一樣。并把 MultiView1放到updatepanel里面。
第二設(shè)置他顯示第一個(gè)view
MultiView1.ActiveViewIndex =0;瀏覽一下。顯示正常。但是當(dāng)我們改變view的顯示時(shí),例如把上面的改成 MultiView1.ActiveViewIndex =1;那么第二個(gè)veiw的效果就全無(wú)了。
到j(luò)query.easyui.min.js 里找原因??吹搅诉@么一句
r=$(".easyui-tabs",_1ec);if(r.length){r.tabs();大概就是在網(wǎng)頁(yè)加載完后,尋找class定義為easyui-tabs 的層。并把效果附加給他。
那么可以想象,當(dāng)頁(yè)面加載時(shí),我們顯示的是第一個(gè)view,那么js就找到view里的層,并賦予其效果。
第二我們?cè)趗pdatepanel里更新了顯示的view,內(nèi)容雖然切換到了第二個(gè)view了。但是頁(yè)面沒(méi)有重新加載,上面的js代碼沒(méi)有對(duì)新的view執(zhí)行改變。
所以決策就是當(dāng)updatepanel回發(fā)后重新執(zhí)行js代碼。
在頁(yè)面定義一個(gè)重新綁定的函數(shù)。
function EndRequestHandler() { $(".easyui-tabs").tabs(); }再定義一個(gè)**。 function reload() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); }add_endRequestPageRequestManager 類(lèi)是一個(gè)管理瀏覽器中服務(wù)器 UpdatePanel 控件的部分頁(yè)更新。此外,還定義一些屬性、**和方法,用以通過(guò)客戶端腳本對(duì)網(wǎng)頁(yè)進(jìn)行自定義。通過(guò)調(diào)用 getInstance 方法來(lái)得到 PageRequestManager 類(lèi)的實(shí)例。第二通過(guò) add_endRequest 方法來(lái)綁定 endRequest **(異步回發(fā)完成,并且控制權(quán)返回到瀏覽器之后引發(fā))。這樣以后,每次updatepanel發(fā)生回調(diào)后,都會(huì)觸發(fā)EndRequestHandler()函數(shù)。重新綁定一次效果。$(document).ready(function() { reload(); })失效問(wèn)題就解決了。
原文:http://www.cnblogs.com/topdog/archive/2010/04/11/1709413.html
拓展知識(shí):
updatepanel
其實(shí)分兩個(gè)UpdatePanel就可以了,第一個(gè)VIEW里一個(gè),第二個(gè)VIEW里也是一個(gè).
另外下面部分顯示不顯示,可以用靜態(tài)的JS來(lái)做不一定要回發(fā)的.
如果不明白,把你的頁(yè)面代碼放出來(lái).
updatepanel
百度HI我
本回答被提問(wèn)者采納
前沿拓展:
updatepanel
只能在 .net 3.5 及更高版本使用 UpdatePanel。
所在程序集為 System.Web.Extensions.dll
項(xiàng)目中使用到了 updatePanel 和jquery-easyui 。
使用updatepanel的好處自然是頁(yè)面不刷新,用戶感覺(jué)比較好,同時(shí)也減少了一部分?jǐn)?shù)據(jù)量的傳輸。
使用easyui 的好處除了界面還不錯(cuò)之外,也因?yàn)槭褂梅奖恪?/p>
<div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇">…</div> <div title="返回">…</div></div>只要給他定義個(gè)相應(yīng)的class 就能實(shí)現(xiàn)各種效果。
但是,把它放在updatepanel里面,且不是首次就讓他顯示出來(lái)的話就出故障了。
例如:
代碼<asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> <asp:View ID="View2" runat="server"> <div class="easyui-tabs" style="width: 300px"> <div title="搜索"> …</div> <div title="選擇"> …</div> <div title="返回"> …</div> </div> </asp:View> </asp:MultiView>在multipleView里面定義兩個(gè)一樣的view,內(nèi)容也一樣。并把 MultiView1放到updatepanel里面。
第二設(shè)置他顯示第一個(gè)view
MultiView1.ActiveViewIndex =0;瀏覽一下。顯示正常。但是當(dāng)我們改變view的顯示時(shí),例如把上面的改成 MultiView1.ActiveViewIndex =1;那么第二個(gè)veiw的效果就全無(wú)了。
到j(luò)query.easyui.min.js 里找原因。看到了這么一句
r=$(".easyui-tabs",_1ec);if(r.length){r.tabs();大概就是在網(wǎng)頁(yè)加載完后,尋找class定義為easyui-tabs 的層。并把效果附加給他。
那么可以想象,當(dāng)頁(yè)面加載時(shí),我們顯示的是第一個(gè)view,那么js就找到view里的層,并賦予其效果。
第二我們?cè)趗pdatepanel里更新了顯示的view,內(nèi)容雖然切換到了第二個(gè)view了。但是頁(yè)面沒(méi)有重新加載,上面的js代碼沒(méi)有對(duì)新的view執(zhí)行改變。
所以決策就是當(dāng)updatepanel回發(fā)后重新執(zhí)行js代碼。
在頁(yè)面定義一個(gè)重新綁定的函數(shù)。
function EndRequestHandler() { $(".easyui-tabs").tabs(); }再定義一個(gè)**。 function reload() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); }add_endRequestPageRequestManager 類(lèi)是一個(gè)管理瀏覽器中服務(wù)器 UpdatePanel 控件的部分頁(yè)更新。此外,還定義一些屬性、**和方法,用以通過(guò)客戶端腳本對(duì)網(wǎng)頁(yè)進(jìn)行自定義。通過(guò)調(diào)用 getInstance 方法來(lái)得到 PageRequestManager 類(lèi)的實(shí)例。第二通過(guò) add_endRequest 方法來(lái)綁定 endRequest **(異步回發(fā)完成,并且控制權(quán)返回到瀏覽器之后引發(fā))。這樣以后,每次updatepanel發(fā)生回調(diào)后,都會(huì)觸發(fā)EndRequestHandler()函數(shù)。重新綁定一次效果。$(document).ready(function() { reload(); })失效問(wèn)題就解決了。
原文:http://www.cnblogs.com/topdog/archive/2010/04/11/1709413.html
拓展知識(shí):
updatepanel
其實(shí)分兩個(gè)UpdatePanel就可以了,第一個(gè)VIEW里一個(gè),第二個(gè)VIEW里也是一個(gè).
另外下面部分顯示不顯示,可以用靜態(tài)的JS來(lái)做不一定要回發(fā)的.
如果不明白,把你的頁(yè)面代碼放出來(lái).
updatepanel
百度HI我
本回答被提問(wèn)者采納
原創(chuàng)文章,作者:九賢生活小編,如若轉(zhuǎn)載,請(qǐng)注明出處:http://cxzzxj.cn/3234.html