我正在尝试使用jQuery更改Angular应用中textarea
的颜色,但它不起作用。
我该怎么办?它说$ is not defined
。
HTML:
<body>
<div ng-app="myApp" ng-controller="testController">
<textarea id="abc">abc
</textarea>
</div>
</body>
</html>
Angular js:
var app = angular.module('myApp', []);
app.controller('testController', function($scope, $http) {
var tdVal =$("#abc");
var x = tdVal.innerHTML;
tdVal.html ("<span style='color: rgba(220, 0, 0, 1)'>" + x"</span>");
});
答案 0 :(得分:1)
你不只是改变颜色,而是控制本身。如果改变颜色是意图:
var elem = angular.element('#abc');
elem.css('color', 'rgba(220, 0, 0, 1)');
对于值更新,angular为您提供绑定指令。
$scope.value = 'some value'
并在视野中
<textarea id="#abc" ng-bind="value"></textarea>
答案 1 :(得分:0)
试试这个,如果没有其他依赖项,它确实有效:
$('#abc').css('color', 'rgba(220, 0, 0, 1)');
答案 2 :(得分:0)
您希望在subtract
代码中呈现HTML,这是浏览器不允许的,但您可以做的是使用可编辑的textarea
元素:
div
结帐Rendering HTML inside textarea
默认情况下, <div id="abc" contenteditable="true"></div>
使用 jQueryLight ,这是限制版本og jQuery。你应该使用angular.element
angular指令:
ng-style
或者您可以根据您的逻辑分配给<div id="abc" contenteditable="true">
<span ng-style="{color: 'rgba(220, 0, 0, 1)'}">abc</span>
</div>
自定义函数,该函数将返回CSS对象。