1. ホーム
  2. javascript

[解決済み] Uncaught SyntaxError: データをソートする関数を追加しようとしたときに、引数リストの後に ) がない。

2022-02-08 21:56:26

質問

エラーが発生します。

Uncaught SyntaxError: 引数リストの後に ) がありません。

を以下のJavascriptで実行します。

jQuery.extend(cipMonitorErrorsSettings, {
    loadOnStartup: true,
    columnDefs: [{
        "mData": "createdDate",
        "bSortable": true,
        "sTitle": '<fmt:message key="card.cipErrors.createdDate"/>',
        "mRender": function(data, type, cipErrors) { //new
          return '<button class="cipSummary buttonlink createdDate">' + cipErrors.createdDate + '</button>'; //new
        }
      },
      {
        "mData": "status",
        "bSortable": true,
        "sTitle": '<fmt:message key="card.cipErrors.status"/>'
      },
      {
        "mData": "jsonRequest",
        "sTitle": '<fmt:message key="card.cipErrors.jsonRequest"/>'
      },
      {
        "mData": "jsonResponse",
        "sTitle": '<fmt:message key="card.cipErrors.jsonResponse"/>'
      }

    ],
    editLinks: [{ //Edit
      selector: ".cipSummary",
      callback: function(target, data) {
        //  debugger;
        $ {
          prefix
        }
        ActionFormHandler.open(data);
      },
      disabled: $ {
        actionBean.restricted['RESTRICT_EDIT']
      }

    }],
    postInitCallback: function() {
      console.log(this.container.find(".appendImage"));
    },
    actionButtons: {
      exportText: '<fmt:message key="export.csv"/>'
    }


  }
  $(document).ready(function(data) {
    $('#cipTable').DataTable({
      "order": [
        [3, "desc"]
      ],
      "columnDefs": [{
          targets: 0,
          data: "createdDate"
        },
        {
          targets: 1,
          data: "status"
        },
        {
          targets: 2,
          data: "jsonRequest"
        },
        {
          targets: 3,
          data: "jsonResponse"
        }
      ]
    })
  });
);

何度も確認し、ダブルチェックし、試しましたが、まだこのエラーを取り除くことができません。デバッガも入れてみましたが、どこで起きているのか特定できません。私は、カラムを表示しようとしていますが、次の方法でソートしています。 createdDate カラムを使用します。

解決方法は?

スクリプトの最後の ");" を削除して、次のようにスクリプトを試してみてください。

jQuery.extend(cipMonitorErrorsSettings, {
    loadOnStartup: true,
    columnDefs: [{
        "mData": "createdDate",
        "bSortable": true,
        "sTitle": '<fmt:message key="card.cipErrors.createdDate"/>',
        "mRender": function(data, type, cipErrors) { //new
          return '<button class="cipSummary buttonlink createdDate">' + cipErrors.createdDate + '</button>'; //new
        }
      },
      {
        "mData": "status",
        "bSortable": true,
        "sTitle": '<fmt:message key="card.cipErrors.status"/>'
      },
      {
        "mData": "jsonRequest",
        "sTitle": '<fmt:message key="card.cipErrors.jsonRequest"/>'
      },
      {
        "mData": "jsonResponse",
        "sTitle": '<fmt:message key="card.cipErrors.jsonResponse"/>'
      }

    ],
    editLinks: [{ //Edit
      selector: ".cipSummary",
      callback: function(target, data) {
        //  debugger;
        $ {
          prefix
        }
        ActionFormHandler.open(data);
      },
      disabled: $ {
        actionBean.restricted['RESTRICT_EDIT']
      }

    }],
    postInitCallback: function() {
      console.log(this.container.find(".appendImage"));
    },
    actionButtons: {
      exportText: '<fmt:message key="export.csv"/>'
    }


  }
  $(document).ready(function(data) {
    $('#cipTable').DataTable({
      "order": [
        [3, "desc"]
      ],
      "columnDefs": [{
          targets: 0,
          data: "createdDate"
        },
        {
          targets: 1,
          data: "status"
        },
        {
          targets: 2,
          data: "jsonRequest"
        },
        {
          targets: 3,
          data: "jsonResponse"
        }
      ]
    })
  });