JQuery найти td с именем класса и изменить текст

Я пытаюсь использовать jquery, чтобы найти текст на основе его имени класса и изменить его. В основном у меня есть эта структура:

<td class = "walletBalance">0.0000 XBT</td>

Итак, я пытаюсь:

$("tbody").find("tr").each(function() { //get all rows in table
var ratingTd = $(this).find('td.walletBalance’);//Refers to TD element
if (ratingTd.text() == “0.0000 XBT”) {
    ratingTd.text(’changed text’);
}
});

Что я делаю неправильно?

Для большего понимания структуры html

В частности, какое значение я пытаюсь изменить

PS: я использую тампермонки

    // ==UserScript==
// @name         testingalarm
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.hey
// @grant        none
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
    $("tbody").find("tr").each(function() {
  var ratingTd = $(this).find('td.walletBalance');
  if (ratingTd.text() == "0.0000 XBT") {
    ratingTd.text('changed text');
  }
});
})();

Кстати, эта сигнализация работает:

// ==UserScript==
// @name         testingalarm
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.some
// @grant        none
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
    $(document).ready(function() {
  alert('WINNING');
});
})();

PSS: после ответа Манарена

// ==UserScript==
// @name         aaaaa
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://www.some
// @grant        none
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==

(function() {
    'use strict';

    // Your code here...
    $("tbody tr td.walletBalance").each(
        function(){
            if ($(this).text() == "0.0000 XBT"){
                $(this).text("changed text");
            }
        }
    );
})();
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
2
0
12 825
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Проблема в том, что вы используете недопустимые символы одинарной и двойной кавычки. Одинарные кавычки должны быть ', а не , а двойные кавычки должны быть ", а не или . Как только это будет исправлено, ваш код работает нормально:

$("tbody").find("tr").each(function() {
  var ratingTd = $(this).find('td.walletBalance');
  if (ratingTd.text() == "0.0000 XBT") {
    ratingTd.text('changed text');
  }
});
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
  <tr>
    <td class = "walletBalance">0.0000 XBT</td>
  </tr>
</table>

Не могли бы вы посмотреть скрипт tampermoney, пожалуйста. Я так менял и все равно ничего.

Andry 25.03.2019 16:55

Добавлен пример работы будильника с помощью этого скрипта

Andry 25.03.2019 16:58

нет. Может быть, мне следует напечатать что-нибудь в консоли для лучшего понимания проблемы.

Andry 25.03.2019 17:01
Ответ принят как подходящий

Я бы попробовал это, я проверил это в браузере, и он работает правильно.

$("tbody tr td.walletBalance").each(
        function(){
            if ($(this).text() == "0.0000 XBT"){
                $(this).text("changed text"); 
            }
        }
    );

Проблемы:

  • Неправильные кавычки символов

  • Имо слишком сложный код для такой простой задачи

  • Возможно какие-то проблемы с импортом

Изменены кавычки и добавлены, как вы сказали. Еще ничего.

Andry 25.03.2019 17:07

И в какой момент вы выполняете свой код? Это после правильной загрузки HTML? Как вы сделали в примере с предупреждением. В противном случае оберните этот код в window.onload или аналогичный.

Maneren 25.03.2019 17:09

На самом деле, у меня есть этот сигнал тревоги до того, как страница загружается должным образом. Должен ли я тогда использовать setTimeout?

Andry 25.03.2019 17:20

Лучше, чем setTimeout, будет $(document).ready("этот фрагмент кода")

Maneren 05.04.2019 18:37

Другие вопросы по теме