Как найти и заменить определенный текст на странице - PullRequest
0 голосов
/ 23 марта 2019

Как найти и заменить определенный текст на html-странице с помощью AngularJs

Этот текст находится на стороннем компоненте, поэтому идентификатор и класс постоянно меняются.На что я могу ссылаться, так это на текст, который я хочу изменить.

Этот конкретный текст на html-странице не является ни классом, ни идентификатором, ни тегом ng вокруг него.

Я не являюсьРазработчик angularjs и страница были построены на asp.net mvc с представлением (cshtml) с использованием angularjs version1.

Есть ли в angularjs способ найти и разместить текст, как в javascript:

document.body.innerHTML = document.body.innerHTML.replace ('old_text', 'new_text');

Спасибо!

Ответы [ 2 ]

0 голосов
/ 23 марта 2019

В мире Angular это называется привязка данных . Вот официальные документы о привязке данных.

Вот рабочие DEMO данных, обновляемых во времени. Сначала html отображает « Исходный текст », а через 5 секунд он изменяется на « Новый текст ».

Что было сделано для этой демонстрации:

  1. Угловой компонент был создан со специальной переменной $scope.text, которая содержит текстовые значения, которые будут изменяться во времени.
  2. Затем эта переменная используется в разметке HTML, например: {{ text }}.
  3. Angular автоматически обрабатывает повторную визуализацию HTML, поэтому при изменении значения $scope.text в компоненте Angular вызывает повторную визуализацию HTML в браузере

UPD другой пример с угловой двусторонней привязкой: DEMO .

Здесь пользователь может изменить значение $scope.text в поле ввода, что автоматически изменит его значение в контроллере. Попробуйте отредактировать поле ввода, и вы увидите, как оно мгновенно обновляется в заголовке над полем ввода.

0 голосов
/ 23 марта 2019

В angularjs каждое состояние приложения (страница) имеет контроллер.Логика для доступа к Dom должна быть размещена в указанном контроллере.

Чтобы манипулировать DOM, смотрите этот ответ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...