首页 > 解决方案 > 使用 jQuery 修剪 itemprop 属性

问题描述

我需要从某个范围内刮掉几个字符。我特别需要定位 itemprop 属性。完整的元素是:

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

目前,它显示的是 03-1973,而我只需要 1973。我想如果我无法确定插件中的设置位置,我可以简单地使用 substring 删除前 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)

可能遗漏了一些明显的东西。有什么建议么?

标签: jquerycsswordpress

解决方案


jQuery('span[itemprop="dateVehicleFirstRegistered"]')不返回字符串,因此在其上使用字符串方法将不起作用。您需要将该范围的内容作为字符串获取,然后对其使用 substring 方法,然后使用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);
    });
});

推荐阅读