2016-03-25 93 views
-1

我在更改条件时遇到了js问题。这是我的代码:JavaScript错误:“不是函数”

self.onAbsenTypeChange = function(prodTarget, prodActual,absentCode) { 
    if (self.saveType() === 'target' || self.saveType() === 'actual') 
    { 
     if (jQuery.isFunction(absentCode)) 
     { 
      if (absentCode() == 'A') 
      { 
       prodTarget(parseToFloat(prodTarget())); 
       prodActual(parseToFloat(prodActual())); 
      } 
     } 
     else 
     { 
      if (absentCode == 'A') 
      { 
       prodTarget(parseToFloat(prodTarget)); 
       prodActual(parseToFloat(prodActual)); 
      } 
     } 
    } 
}; 

当我看着萤火虫,代码中有一个错误:

"is not a function"

像这样:

error

<select class="show-tick form-control absent-type" id="ddlAbsentType" 
            data-live-search="true" 
            data-bind="value: $data.AbsentTypeComputed, options: $root.AbsentSelectList, 
             optionsText: 'Text', optionsValue : 'Value', optionsCaption:'', isSelectPicker:{}, event : {change : $root.onAbsenTypeChange($data.ProdTarget, $data.ProdActual, $data.AbsentCodeEblek)}"></select> 

以上是代码用于调用我的js函数。

+1

'absentCode()'?为什么括号('()')? – Rayon

+4

如果'prodTarget'不是一个函数,那么它必须是别的东西。我们不能说出是什么,因为你没有向我们展示它来自哪里。这是该函数的第一个参数,但是您没有分享函数的调用方式。 – Quentin

+0

请发布调用该函数的代码部分 – Aleeeeee

回答

-2

prodTarget不是函数,而是函数的参数。试试这个:

prodTarget = parseToFloat(prodTarget); 
+0

完成,,这段代码帮我 谢谢:) – thyegablot