我动态创建一个我需要控制其宽度和位置的元素。我尝试使用input
在创建的元素中使用ng-model
和ng-style
指令更改其样式,方法如下:
JS:
function createElementAndAppend(){
element = angular.element("<"+element+" id='inputTag' ng-click='selectClickedElm($event.currentTarget)' ng-style='{width: w + 'px'} placeholder='input'>");
angular.element(document.getElementById('board')).append($compile(element)($scope));
}
HTML:
<input type="number" ng-model="w" placeholder="change width">
我收到错误:
Error: [$parse:ueoe] Unexpected end of expression: {width: w
显然问题出在ng-style='{width: w + 'px'}
上。如何将加号写入angular将知道将w
的值解释为px
作为元素的最终宽度?
答案 0 :(得分:2)
我还没有测试过,但这应该可行:
element = angular.element("<"+element+" id='inputTag' ng-click='selectClickedElm($event.currentTarget)' ng-style='{width: w + \"px\"}' placeholder='input'>");