2023年7月20日木曜日

Tabulatorで他のフィールドを参照して書き換える

Tabulatorで他のフィールド(セル)を参照して書き換える方法です。

formatterに getValue(), getData() を使用して関数を定義します。

cell.getValue() でフィールド自身の値を取得できます。
cell.getData() でフィールドを含む行のデータを取得できます。
cell.getData().[他のフィールド名] で他のフィールドの値を取得できます。


    let table = new Tabulator('#example-table', {
      ajaxURL: './item.json',
      layout:"fitColumns", //fit columns to width of table (optional)
      columns: [
        {
          title: '名称',
          field: 'name',
          formatter: function(cell){
            let name = cell.getValue();
            let pdf_url = cell.getData().pdf_url;
            if (pdf_url) {
              return `<a href="${pdf_url}" target="_blank">${name}</a>`;
            } else {
              return name;
            }
          }
        },
        { title: 'PDF', field: 'pdf_url', visible: false },
・・・・・ ・・・・・


0 件のコメント:

コメントを投稿