AngularJS JavaScript语法错误

AngularJS JavaScript语法错误,javascript,angularjs,Javascript,Angularjs,我有一个angularjs ng类函数,我试图用它来设置我的表行颜色。我对angular和js都是新手,所以我的错误很可能是用户错误。我试图检查一个日期字段是否为空/未定义,然后尝试相应地设置行颜色,但是我在日期上遇到了一个解析错误。我需要和我的约会对象做些不同的事情吗 谢谢 html设置行颜色: <tr data-ng-repeat="s in data.sites" data-ng-class="setRowConditional({{s.LastScanReceived}})"&

我有一个angularjs ng类函数,我试图用它来设置我的表行颜色。我对angular和js都是新手,所以我的错误很可能是用户错误。我试图检查一个日期字段是否为空/未定义,然后尝试相应地设置行颜色,但是我在日期上遇到了一个解析错误。我需要和我的约会对象做些不同的事情吗

谢谢

html设置行颜色:

  <tr data-ng-repeat="s in data.sites" data-ng-class="setRowConditional({{s.LastScanReceived}})">
分析错误:

Error: [$parse:syntax] Syntax Error: Token 'T13' is unexpected, expecting [)] at column 29 of the expression [setRowConditional(2013-12-18T13:59:09.397)] starting at [T13:59:09.397)].

如果您设置一个JSFIDLE,它可能会有所帮助,但我会马上说,您可能不需要在函数调用中使用花括号。这意味着您将得到以下(修改的)代码行:

<tr data-ng-repeat="s in data.sites" data-ng-class="setRowConditional(s.LastScanReceived)">

通常,在直接替换html模板中的文本时,需要大括号。试试看,让我知道它是否有效

编辑

顺便说一下,还有另一种方法可以有条件地设置元素的类。基本上可以使用以下语法:

<ANY ng-class="{'warning' : isWarningClass, 'error' : isErrorClass}"></ANY>


在本例中,“isWarningClass”是作用域上的一个布尔值,当您想将“any”元素的类更改为“warning”时,会设置该值。“isErrorClass”遵循同样的理念。这个例子的好处在于它向您展示了如何在同一个元素上有条件地指定多个类。这可能是一种不同的(更简单的?)方式来获得你想要的东西。再次祝你好运

是的,它确实…用户错误。@scarpacci不是无知-你的学习刚刚开始。坚持下去——我想你会喜欢的!谢谢你的帮助,伙计。
<ANY ng-class="{'warning' : isWarningClass, 'error' : isErrorClass}"></ANY>