Использование jQuery для обрезки атрибута itemprop - PullRequest
1 голос
/ 19 марта 2019

Мне нужно сбрить несколько символов из определенного промежутка.Мне конкретно нужно указать целевой атрибут itemprop.Полный элемент:

<span itemprop="dateVehicleFirstRegistered" class="wpcm-vehicle-data">03-1973</span>

В настоящее время он отображает 03-1973, когда мне нужен только 1973. Я подумал, что если я не могу понять, где это было установлено в плагине, я мог бы просто использоватьподстрока, чтобы удалить первые 3 символа, чтобы показать только 1973.

Год, конечно, меняется в зависимости от того, что вводит пользователь, и, следовательно, ему нужно ориентироваться на itemprop, а не только на этот конкретный случай.

Прошло много времени с тех пор, как я использовал jQuery.Моя текущая попытка:

<script type="text/javascript">
jQuery(document).ready(function(){
        jQuery('span[itemprop="dateVehicleFirstRegistered"]').substring(3);
    });
</script>

Однако я получаю сообщение об ошибке, говорящее, что это не функция.Ошибка:

(index):494 Uncaught TypeError: jQuery(...).substring is not a function
    at HTMLDocument.<anonymous> ((index):494)
    at i (jquery.js?ver=1.12.4:2)
    at Object.fireWith [as resolveWith] (jquery.js?ver=1.12.4:2)
    at Function.ready (jquery.js?ver=1.12.4:2)
    at HTMLDocument.K (jquery.js?ver=1.12.4:2)

Вероятно, пропущено что-то очевидное.Есть предложения?

Ответы [ 2 ]

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

Вы можете использовать функцию разделения, чтобы получить год.

console.log($('span[itemprop="dateVehicleFirstRegistered"]').text().split("-")[1]);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<span itemprop="dateVehicleFirstRegistered" class="wpcm-vehicle-data">03-1973</span>
0 голосов
/ 19 марта 2019

jQuery('span[itemprop="dateVehicleFirstRegistered"]') не возвращает строку, поэтому использование строковых методов не будет работать. Вам необходимо получить содержимое этого диапазона в виде строки, затем использовать для него метод подстроки, а затем сбросить содержимое span с новым значением.

Кроме того, используйте цикл each для внесения изменений в каждый экземпляр:

jQuery(document).ready(function(){
    jQuery('span[itemprop="dateVehicleFirstRegistered"]').each(function() {
        let myText = jQuery(this).text();
        myText = myText.substring(3);
        jQuery(this).text(myText);
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...