2016-12-06 77 views
2

有一個模式對話框,顯示所選發票的mantle.ledger.transaction.AcctgTransEntry。在該對話框中的按鈕調用一個服務,它的帖子總帳交易:立即運行服務並計算模態對話框內容

function postTransactionToGl() { 
          var invoiceId = $("input[id='showGlTransactions_Header_invoiceId_id']").val(); 

          $.ajax(
           { 
            type:"POST", 
            url:"${sri.buildUrl('postInvoiceToGl').url}", 
            data: 
             { 
              moquiSessionToken: "${(ec.getWeb().sessionToken)!}", 
              invoiceId: invoiceId 
             }, 
            dataType:"json" 
           } 
          ); 
         }; 

然後有一個JS函數,它顯示錶對話框中的內容。它調用一個返回包含條目的JSON數據的服務。我想要一個接一個地發佈這兩個函數,首先發布事務,然後重新繪製表格。我該怎麼做?有沒有一種方法可以運行服務,等待事務提交併運行刷新?

回答

1

這是一個比Moqui問題更多的jQuery問題。答案很簡單:使用jQuery.ajax()中的'success'選項指定一個函數來調用某個方法來執行某些操作。請參閱:

http://api.jquery.com/jquery.ajax/

你所描述的東西是與在瀏覽器中運行的MVVM或MVC工具容易得多。這裏有很多這些,現在有一個在Moqui中使用Vue JS的概念證明。通過數據綁定,來自AJAX請求的回調將非常簡單,只需更新模型中的數據即可自動更新視圖。請參閱moqui-framework和moqui-runtime存儲庫中的'vuejs'分支。