【问题标题】:How to use $.each method for an array in jQuery?如何在 jQuery 中对数组使用 $.each 方法?
【发布时间】:2011-07-02 00:29:33
【问题描述】:
function calcTotalScore(){
    var arr = ["A","B","C","D","E","F"];
    $.each(arr, function(n,val){
        calcTotal(val);
    });
}

calcTotal(value){
// sample code
}

我在 Velocity 模板语言 (VTL) 中使用上述函数 calcTotalScore(),但它说:

Encountered "," Was expecting one of:
   <EOF> 
    "(" ...
   <RPAREN> ...
   <ESCAPE_DIRECTIVE> ...
   <SET_DIRECTIVE> ...
   "##" ...
   "\\\\" ...
   "\\" ...
   <TEXT> ...
   "*#" ...
   "*#" ...
   <STRING_LITERAL> ...
   <IF_DIRECTIVE> ...
   <STOP_DIRECTIVE> ...
   <INTEGER_LITERAL> ...
   <FLOATING_POINT_LITERAL> ...
   <WORD> ...
   <BRACKETED_WORD> ...
   <IDENTIFIER> ...
   <DOT> ...
   "{" ...
   "}" ...

我做错了什么?

【问题讨论】:

    标签: jquery vtl


    【解决方案1】:

    更新

    查看 a'r 的答案:D


    你只是在 calcTotal 前面少了一个“函数”;)

    http://fiddle.jshell.net/gabel/7SvUY/1/

    function calcTotalScore(){
        var arr = Array("A","B","C","D","E","F");
        $.each(arr, function(n,val){
            calcTotal(val);
        });
    }
    
    function calcTotal(value){
    // sample code
        alert(value);
    }
    
    calcTotalScore();
    

    【讨论】:

    • 那么这似乎是一个VTL的问题,就像前面提到的那样。您是否尝试将 " 替换为 ' ?我不知道 VTL 并在添加其他信息之前写了这个答案..
    • 这似乎正是 a'r 提到的问题......请参阅:groups.google.com/group/castle-project-users/browse_thread/…
    • 是的,这是 ar 提到的问题...谢谢 :),它的工作原理 :)
    【解决方案2】:

    VTL 将 jQuery 的 $ 解释为变量的开始。然后它会抱怨,因为变量名不能以点开头。

    你有两个选择:

    1. 用反斜杠转义美元,例如。 \$
    2. 使用jQuery 而不是$

    【讨论】:

      猜你喜欢
      • 2018-01-04
      • 2016-08-20
      • 2016-10-21
      • 2016-08-09
      • 2011-10-11
      • 1970-01-01
      • 2021-12-20
      • 1970-01-01
      • 2023-03-03
      相关资源
      最近更新 更多