按内容选择元素,并删除其内容的第一个和最后一个字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了按内容选择元素,并删除其内容的第一个和最后一个字符相关的知识,希望对你有一定的参考价值。

我有一个动态页面,可以从Google App Script中获取数据并使用它们进行可视化。

这是我用作htmlService的代码

的index.html

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
    google.charts.load('current', {'packages':['table']});
    google.charts.setOnLoadCallback(drawSheetName);

    function drawSheetName() {
        var query = new google.visualization.Query('/*query contents*/');
        query.send(drawTable);
    }

    function drawTable(response) {
        var data = response.getDataTable();
        var table = new google.visualization.Table(document.getElementById('table_div'));
        table.draw(data, {showRowNumber: false, width: '100%', height:'100%'});
    }
</script>
<body>
    <div id="table_div"></div>
</body>

所以,我想选择可视化的最后一列的值,并用CSS, JS, JQuery删除它们的第一个和最后一个字符......无论如何。

值始终包含<a href,因此可以通过元素的内容或行号来定义选择器。我将尝试用代码解释我正在尝试做什么,但这是不正确的,因为我正在混合语言。

<script>
    var select = $( "td:contains('<a href')" );
    select.slice(1, -1);
</script>

要么

<script>
    document.getElementByTagName("TD"):contains('<a href').slice(1, -1);
</script>
答案

您需要循环每一行以删除最后一列的第一个和最后一个字符。用以下替换drawTable功能

function drawTable(response) {
        var data = response.getDataTable();
        var table = new google.visualization.Table(document.getElementById('table_div'));
        table.draw(data, {showRowNumber: false, width: '100%', height:'100%'});
        $(".google-visualization-table-table tr td:nth-child(11)").each(function() { // Assuming 11 is the last column number
           var data = $(this).text();
           $(this).text(data.slice(1, data.length - 1));
       });
    }
另一答案

$('some_selector')返回一个对象,所以你不能在一个对象上使用切片,它应该是一个字符串,就像这样你得到你的tds: var toBeSliced = "Hello world"; // string toBeSliced = toBeSliced.slice(1,toBeSliced.length -1 ); // cut off first and last chars console.log(toBeSliced);

在获得包含数据的html标签后,您可以使用element.textContent.slice( _ , _ ) ;

String.prototype.slice()

以上是关于按内容选择元素,并删除其内容的第一个和最后一个字符的主要内容,如果未能解决你的问题,请参考以下文章

js数组操作方法

nodejs中对于数组的相关处理

php获取并删除数组的第一个和最后一个元素

php获取并删除数组的第一个和最后一个元素

jQuery 选择器:获取包含特定单词的第一个元素类的内容

删除除包含给定字符串的第一行之外的所有内容