2

インライン編集で選択を使用しようとしています。編集用のポップアップを使用してこれを適切に表示するようにしましたが、すべてインラインにしてブラーで送信したいです。私のデータには、各ドロップダウン項目の ID と名前の両方が含まれており、{ label: "blah", value: "blah" } などのようなオブジェクトになっています。

ただし、DataTable では、ドロップダウンはすべてデフォルト値としてラベルではなく ID で表示されています。ユーザーにIDを見せたくありません。エディター フィールド名をラベルに、DataTable 列を値に設定しようとしましたが、これはポップアップでは機能するように見えましたが、インライン編集では「ソースからフィールドを自動的に判別できません。フィールド名を指定してください」というエラーが表示されます。 "。

私の初期化は次のようになります。

editor = new $.fn.dataTable.Editor({
      ajax: 'url',
      table: '#table',
      idSrc: 'id',
      fields: [{
          label: "Location",
          name: "location_name", //this is where the problem is, I think
          type: "select",
          ipOpts: locationList
      }]})

 $('#table').dataTable({
      dom: "Tfrtip",
      "searching": false,
      "ajax": {
          "url": "url",
          "type": "GET"
      },
      "columnDefs": [
        { "visible": false, "targets": [8] }
      ],
      "columns": [
          { "data": "location_id" }
      ])}

名前を使用するように DataTable を変更すると、表示は正しくなりますが、ID ではなく名前がデータベースに送信され、ID が必要になります。

私は何をすべきか?

4

1 に答える 1