JQuery-EasyUI 提供了較為精簡地封裝。讓我們能更便捷地實現WEB UI。
對於Confirm 方法,在其 Sample 中,是如下描述的:
$.messager.confirm('My Title', 'Are you confirm this?', function(r){ |
location.href = 'http://www.google.com'; |
對於Asp.Net 服務端控制項,如 LinkButton,若需要加入確認框時,我們時常使用
OnClientClick="return confirm('確定刪除?');"
但是,如果我們期望UI的統一,我們想用jQuery-EasyUI 的 Confirm,卻不能單純地如下封裝
$.messager.confirm('確認', msg, function(r) { |
然後,如此調用:
OnClientClick="return Confirm('確定刪除?');" //注意大小寫,此Confirm 非 彼 confirm
我們知道 LinkButton 真正在觸發業務的是 用 href 屬性中的 javascript 執行
<a plain="true" icon="icon-remove" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$gv$ctl08$LinkButton1','')" onclick="return Confirm('通過嗎?');" class="easyui-linkbutton" id="ctl00_ContentPlaceHolder1_gv_ctl08_LinkButton1">刪</a>
所以,我們需要改變思路,做如下封裝。
|
function Confirm(msg, control) { |
|
$.messager.confirm('確認', msg, function(r) { |
|
eval(control.toString().slice(11));//截掉 javascript: 並執行 |
調用時使用 return Confirm('確認嗎?', this);