将对象值连接到html模板中的字符串变量

时间:2015-07-10 07:28:52

标签: jquery angularjs

我在处理mouseoverOnStep指令时遇到了困难。我将两个参数传递给selector函数,一个是对象值本身,第二个是元素的<li ng-mouseover="mouseoverOnStep(Color.color_value, '.mask-second-{{Color.id}}');" ng-repeat="Color in select.Color">&nbsp;</li> 。我有以下HTML代码

<li ng-repeat="Color in select.Color" ng-mouseover="mouseoverOnStep(Color.color_value, '.mask-second-');" class="ng-scope">&nbsp;</li>

当我检查我的元素时,我得到的输出是什么。它是

Error: [$parse:syntax] 

使用

{{Color.id}}

为什么我没有在DOM中获得ng-mouseover="mouseoverOnStep(Color.color_value, '.mask-second-12');" ng-mouseover="mouseoverOnStep(Color.color_value, '.mask-second-13');" 的值? 我期待像。

stats / stats_fields / fieldname

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:2)

这已经是一个角度表达式:

{{ }}

ng-mouseover="mouseoverOnStep(Color.color_value, '.mask-second-'+ Color.id);" 放入javascript无效。

您有两个选择:

Color.id

这不会评估并显示ng-mouseover="mouseoverOnStep(Color);" 的值,为什么要这样?它与在JavaScript中编写此函数相同:

function showMeId(value){ 的console.log(值); }

showMeId('。mask-second-'+ Color.id); //在javascript中你永远不会看到评估。

- 或 -

mouseoverOnStep

您的function mouseoverOnStep(color) { var cssClass = '.mask-second-' + Color.id; }

{{1}}

我认为你对什么是JavaScript以及什么是HTML以及评估的内容感到困惑。