2017-12-20 30 views
1

私は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> 

答えて

0

最後の列の最初と最後の文字を削除するには、各行をループする必要があります。 1.あなたの対象となるデータが含まれているHTML要素を取得します:

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)); 
     }); 
    } 
0

$('some_selector')あなたがオブジェクトにスライスを使用することはできませんので、あなたのtd秒を取得した後、それはこのような文字列であるべきで、オブジェクトを返します。 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()

+0

以下のように使用すると、次の操作を実行してとdrawTable機能を交換してください。 2.クエリの結果を反復処理します。 3.取得する各要素のテキスト(文字列)コンテンツを取得します。 4.スライスする –

関連する問題