2017-09-14 7 views
0
var formData = new FormData(); 
formData.append("name", "John"); 
formData.append("age", "31"); 
for (var value of formData.values()) { 
      log.debug(value); 
       } 

ただし、formData apiを使用してフォーム値をログに記録する場合。それは以下のエラーを与えています。
ReferenceError: "FormData"が定義されていません。suitscript 2.0を使用してnetsuiteでフォームを作成する

+0

は、正確なエラーメッセージということですか?私はあなたが "formData"を使用したことを示し、エラーが "FormData"を表示するので尋ねます。それらは同じ変数ではありません。おそらく、コード内の他の場所で誤って "F"を大文字にしたのでしょうか? – W3BGUY

+0

基本的に私はusereventスクリプトを使って、データを処理せず、Webページのエラーを表示します。 正確なエラーは次の通りです org.mozilla.javascript.EcmaError:ReferenceError: "FormData"は定義されていません。 – Talal

+0

"formData"の代わりに "FormData"のコードを検索しましたか? – W3BGUY

答えて

1

いるFormDataはXMHttpRequest

このUserEventスクリプトで管理client side APIは、すべての利用可能な無ブラウザベースのAPIを使用してサーバーサイドスクリプトですされています。

クライアントスクリプトでFormDataを使用して、SuiteletまたはRESTletに情報を送信できますが、UserEventスクリプトには存在しません。

あなたはサンプルとして、以下を使用することができますSS2.0を使用してSuiteletでフォームを作成する場合:

/** 
*@NApiVersion 2.x 
*@NScriptType Suitelet 
*/ 
define(["N/log", "N/redirect", "N/runtime", "N/ui/serverWidget", "N/url", "./kotnRECBCFilters"], 
    function (log, redirect, runtime, ui, url, kotnRECBCFilters_1) { 
    function showPropertiesForm(context) { 
     var form = ui.createForm({ 
      title: 'Property Trust Ledger' 
     }); 
     var req = context.request; 
     var fromLoc = form.addField({ 
      id: 'custpage_loc', 
      type: ui.FieldType.SELECT, 
      label: 'For Property', 
      source: 'location' 
     }); 
     fromLoc.updateLayoutType({ layoutType: ui.FieldLayoutType.NORMAL }); 
     fromLoc.updateBreakType({ breakType: ui.FieldBreakType.STARTCOL }); 
     if (req.parameters.custpage_loc) { 
      fromLoc.defaultValue = req.parameters.custpage_loc; 
     } 
     var notAfterDate = form.addField({ 
      id: 'custpage_not_after', 
      type: ui.FieldType.DATE, 
      label: 'On or Before' 
     }); 
     if (req.parameters.custpage_not_after) { 
      notAfterDate.defaultValue = req.parameters.custpage_not_after; 
     } 
     form.addSubmitButton({ 
      label: 'Get Detail' 
     }); 

     //... bunch of stuff removed 

     context.response.writePage(form); 
    } 

    function onRequest(context) { 
     if (context.request.method === 'POST') { 
      var currentScript = runtime.getCurrentScript(); 
      var params = {}; 
      for (var k in context.request.parameters) { 
       if (k.indexOf('custpage_') == 0 && k.indexOf('custpage_transactions') == -1) { 
        if ((/^custpage_.*_display$/).test(k)) 
         continue; 
        params[k] = context.request.parameters[k]; 
       } 
      } 
      redirect.toSuitelet({ 
       scriptId: currentScript.id, 
       deploymentId: currentScript.deploymentId, 
       parameters: params 
      }); 
      return; 
     } 
     showPropertiesForm(context); 
    } 
    exports.onRequest = onRequest; 
}); 
+0

はい私はユーザーイベントスクリプトに取り組んでいました。 – Talal

関連する問題