簡體   English   中英

如何使用 jQuery 更改 Angular 字段 textarea 的內容

[英]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>

查看在 textarea 中渲染 HTML

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM