[英]How to change the content of an Angular field textarea using jQuery
我正在嘗試使用 jQuery 更改 Angular 應用程序中文本textarea
的顏色,但它不起作用。
我該怎么辦? 它說$ is not defined
。 HTML:
<body>
<div ng-app="myApp" ng-controller="testController">
<textarea id="abc">abc
</textarea>
</div>
</body>
</html>
角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>");
});
您不僅要更改顏色,還要更改控件本身。 如果改變顏色是意圖:
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>
試試這個,如果沒有其他依賴,它確實有效:
$('#abc').css('color', 'rgba(220, 0, 0, 1)');
看起來你想在textarea
標簽中渲染 HTML,這是瀏覽器不允許的,但你可以做的是使用可編輯的div
元素:
<div id="abc" contenteditable="true"></div>
angular.element
默認使用jQueryLight ,它是 jQuery 的受限版本。 您應該使用ng-style
angular 指令:
<div id="abc" contenteditable="true">
<span ng-style="{color: 'rgba(220, 0, 0, 1)'}">abc</span>
</div>
或者您可以根據您的邏輯將您的自定義函數分配給ng-style
,該函數將返回 CSS 對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.