明けましておめでとうございます。おめでたいハズのお正月ですが、解決できない問題があり元旦から四苦八苦しています。


問題はーー、

Googleスプレッドシートの情報をGoogle Visualization APIを使って表示させているのですが、データに1)画像のurl 2)ウェブページのurl があって、それをGoogle Visualization APIの 「PatternFormat」 (http://code.google.com/intl/ja/apis/visualization/documentation/reference.html#patternformatter)で修正しています。

1)の部分は、http://abc/efg.gif という型式でしたので、PatternFormatで<img src="http://abc/efg.gif">に修正できました。http://www.withmama.info/study/q_hatena.html

問題は2)です。型式は、http://www.abc.de.fg/ なので、同様にPatternFormatで、
<a href="http://www.abc.de.fg/" target="_blank">リンク</a> になるよういろいろやってみたのですが、すべてダメでした。

文字数制限のため、コード( 2の段階に入る前のもの)をすべて記載できないので、お手数ですが、http://www.withmama.info/study/q_hatena.html よりソースをご高覧ください。

また、スプレッドシートはhttps://spreadsheets.google.com/ccc?key=0Al6QgcpDSQBPdE1UV1c5eldjMEc3M1g5ejk2T2c1WXc&hl=ja&authkey=CLOFytIH#gid=0 です。

私にも良いお正月が過ごせるようにご教示いただけましたら幸いです。

回答の条件
  • URL必須
  • 1人20回まで
  • 登録:
  • 終了:2011/01/03 06:04:21
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:Cherenkov No.1

回答回数1504ベストアンサー獲得回数493

ポイント60pt

コメント欄を有効にしたほうが有益です。

質問がよくわからないのですが、link[1]の列のアドレスにリンクを張りたいということでしょうか。以下のようにしたらできました。

function handleResponse(response){
  if(response.isError()) {
    document.getElementById('res').innerHTML=response.getDetailedMessage();
    return;
  }
  var table = new google.visualization.Table(document.getElementById('res'));
  var data = response.getDataTable();

  var img_formatter = new google.visualization.PatternFormat('<img src="{0}" width="60">');
  img_formatter.format(data, [0, 0]);

  //この下の2行を追加
  var link_formatter = new google.visualization.PatternFormat('<a href="{0}" target="_blank">{0}</a>');
  link_formatter.format(data, [5, 5]);
  
  var view = new google.visualization.DataView(data);
  view.setColumns([0, 1, 2, 3, 4, 5]);

  table.draw(view, {page: 'enable', allowHtml: true, sortColumn: 2,sortAscending: false, width:'720'});
}

Google Visualization API Reference - Google Chart Tools / Interactive Charts (aka Visualization API) - Google Code

id:ozaki

お礼が遅くなりました。見事に実行できました。感謝です!

2011/01/03 06:03:39

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません