2013-06-24 44 views
0

爲什麼如果我寫這個定義:的ReferenceError:結果不上調用SQL適配器程序

function selectListaArticoliOrdineCliente(n_ordine,cod_cli){ 
    var invocationData={ 
      adapter : 'DB2Adapter', 
      procedure: 'selectListaArticoliOrdineCliente', 
      parameters:[n_ordine,cod_cli] 
     }; 

     WL.Client.invokeProcedure(invocationData, 
     { 
      onSuccess: function(){ 
       getAllDettaglioOrdine(result); 
      }, 
       onFailure: function(){ 
        WL.Logger.debug("fallito"); 

       } 

     }  
     ); 
} 

或寫這個

function selectListaArticoliOrdineCliente(n_ordine,cod_cli){ 
    .... 
     WL.Client.invokeProcedure(invocationData, 
     { 
      onSuccess: getAllDettaglioOrdine(result); 
      , 
       onFailure: function(){ 
        WL.Logger.debug("fallito"); 

       } 

     }  
     ); 
} 

結果變量沒有定義,但如果我寫這篇

function selectListaArticoliOrdineCliente(n_ordine,cod_cli){ 
     .... 
      WL.Client.invokeProcedure(invocationData, 
      { 
       onSuccess: getAllDettaglioOrdine 
       , 
        onFailure: function(){ 
         WL.Logger.debug("fallito"); 

        } 

      }  
      ); 
    } 

所有的工作都完美嗎?我如何將另一個參數傳遞給onSuccessFunction?例如,我會通過結果和id.Such作爲

onSuccess: getAllDettaglioOrdine(result,"9000000") 

功能getAllDettagioOrdine

function getAllDettaglioOrdine(result,id_ordine){ 

    ordine_cliente_dettaglio_articolo=result.invocationResult.resultSet; 

..

回答

3

它看起來就像你調用一個函數,而不是定義一個回調。

更改此:

onSuccess: getAllDettaglioOrdine(result,"9000000")

這樣:

onSuccess: function(result){ getAllDettaglioOrdine(result,"9000000") }

相關問題