Замените текст li с помощью jquery

Я пытаюсь заменить содержимое li и тегов.

Пробовал ниже код.

   <html>
    <head>Sample</head>
   <body>
    <a href = "#"><input type = "checkbox" class = "layer-input-filter" name = "testname">Test <span class = "count">5</span>      </a>

    <a href = "#"><input type = "checkbox" class = "layer-input-filter" name = "testname1">Test1 <span class = "count">10</span> </a>

 <ul>
  <li><a href = "#" rel = "noopener">Mixed assessment guidelines</a></li>
  <li><a href = "" target = "_blank" rel = "noopener">Specimen </a></li>
  <li><a href = "#" rel = "noopener">Plagiarism </a></li>
  <li><a href = "" target = "_blank" rel = "noopener">Download </a></li>
  <li><a href = "#" rel = "noopener">Qualification update</a></li>
  <li><a href = "" target = "_blank" rel = "noopener">Specimen</a></li>
  <li><a href = "#" rel = "noopener">Exam guide update</a></li>
  <li><a href = "" target = "_blank" rel = "noopener">Guide </a></li>
 </ul>

  <script>
     $(document).ready(function($) {
      var value = 0.4;
      $("body").find('li').each(function (index) {
                if ($(this).text() != '') {

                    var str = $(this).clone().children().remove().end().text();
                    var newstring =  str + str.substring(0, str.length  * value);
                    $(this).text(newstring);
                }
            });
    });
   </script>
 </body>

  </html>

Мне нужно заменить текст каждого ли внутри тела. поэтому использовал для этого выше jquery. Но это не работает.

Пример :

  <li><a href = "#" rel = "noopener">Plagiarism </a></li>

Следует заменить как

   <li><a href = "#" rel = "noopener">PlagiarismPlag </a></li>

Первые четыре символа каждого текста ли. Это Плаг в приведенном выше примере.

Может ли кто-нибудь помочь мне с этим, пожалуйста?

Каков ожидаемый результат? Что такое value?

epascarello 14.03.2019 15:14

@epascarello. сначала li следует заменить Specimen -> SpecimenSpeci

jafar pinjar 14.03.2019 15:15

Вы действительно включили jQuery на страницу? А что такое value?

epascarello 14.03.2019 15:17

да, значение, которое я получаю сейчас Образец для первого ли

jafar pinjar 14.03.2019 15:20

Вы так и не ответили..... В коде value НЕ определено, значит будет ошибка. Где вы это определяете.

epascarello 14.03.2019 15:22

@epascarello, я не смотрю на значение, нужно изменить текст. Вам понятно требование?

jafar pinjar 14.03.2019 15:23
"четкое требование" - нет, совершенно точно не понятно, чего вы пытаетесь достичь. Вы говорите, что хотите заменить «текст», но li содержит html, и похоже, что вы хотите удалить дочерние элементы и заменить текстом, но как вы определяете, что «Образец» становится «ОбразецСпец», действительно не ясно.
freedomn-m 14.03.2019 15:28

@epascarello, есть текст li, например «Загрузить», «Образец», я пытаюсь заменить этот текст, добавив еще 4 первых символа для этого текста.

jafar pinjar 14.03.2019 15:46
1)«Но это не работает» — это худшее описание проблемы, какое только может быть. 2) "Текст" в элементах <a>... не в элементах <li>3)«следует заменить Specimen -> SpecimenSpeci» - очень странная цель... 4) Второй аргумент .substring() не может быть числом с плавающей запятой... Это то, что у вас есть при умножении строки длина на 0.4. и причина, по которой вы это делаете, необъяснима. -- проголосовали за закрытие как неясное
Louys Patrice Bessette 14.03.2019 16:19

@LouysPatriceBessette, теперь ясно?

jafar pinjar 14.03.2019 16:37

@epascarello, я обновил вопрос

jafar pinjar 14.03.2019 16:41
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
5
11
495
1

Ответы 1

думаю проблема в линии

 var str = $(this).clone().children().remove().end().text();

Порядок функций делает строку в конце пустой. Если вы замените его на

 var str = $(this).text();

оно работает.

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

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