Closed zouber closed 9 years ago
最近在 common.js 裏面新增了一個函數 showPromptWithConfirm() 主要也是顯示系統提示用,和之前的 showPrompt() 主要的不同在於這個會需要使用者點確認才會有動作,我希望這個函數是可以通用的,也就是在任何頁面,只需要呼叫這個函數,就能夠長出一個提示框,但問題是每個不同的提示視窗想要觸發的動作都未必相同,所以感覺上這個"動作" 也需要做為參數才能達到既共用,但後續動作各自不同的需求,為了達到這個目的,我定義了兩個參數
confirm_func cancel_func
在傳送時,我用匿名函式的方式傳遞,類似這樣:
__showPromptWithConfirm('確認送出訂單?', { 'vid': vendor_id, 'cancel_func': function(btn_DOM){ // do something }, 'confirm_func': function(btn_DOM){ // do something } });
在 __showPromptWithConfirm() 裏面只要發現有傳送 confirm_func cancel_func 就會分別在點擊 "確認" "取消" 時被呼叫,經過實驗證實這是可行的
實做 issue #517 中提及的效果
僅為記錄功能,close
利用 issue #517 提到的功能,實做新版購物車裏面當超量購買時的提示框(需要確認鈕),並藉由製作此項功能,發現既有 __showPromptWithConfirm() 的問題(原本用 live 函式綁定 handlers 會造成後續生成按鈕被綁定的 handlers 不斷疊加, 而非單次只綁特定一個),並改正,並針對 按鈕提示字樣 和 是否要顯示 確定以及取消按鈕是否要顯示,也提供了參數以控制
最近在 common.js 裏面新增了一個函數 showPromptWithConfirm() 主要也是顯示系統提示用,和之前的 showPrompt() 主要的不同在於這個會需要使用者點確認才會有動作,我希望這個函數是可以通用的,也就是在任何頁面,只需要呼叫這個函數,就能夠長出一個提示框,但問題是每個不同的提示視窗想要觸發的動作都未必相同,所以感覺上這個"動作" 也需要做為參數才能達到既共用,但後續動作各自不同的需求,為了達到這個目的,我定義了兩個參數
confirm_func cancel_func
在傳送時,我用匿名函式的方式傳遞,類似這樣:
在 __showPromptWithConfirm() 裏面只要發現有傳送 confirm_func cancel_func 就會分別在點擊 "確認" "取消" 時被呼叫,經過實驗證實這是可行的