0

このスクリプトを回避します: https://developers.google.com/apps-script/articles/helpdesk_tutorial?hl=it

このコード部分。

 var textApptDate = app.createTextBox();
    // Text entered in the text box is passed in to apptDate
  textApptDate.setName('apptDate');
  var day = new Date();
  day.setDate(day.getDate()+1);
  textApptDate.setText(Utilities.formatDate(day, "PDT", "MM/dd/yyyy"));
  grid.setWidget(0, 0, app.createLabel('Appointment Date:'));
  grid.setWidget(0, 1, textApptDate);

DatePicker を挿入するためのコードを変更します

 var day = new Date();
   day.setDate(day.getDate()+1); 
   var textApptDate = app.createDateBox().setName('apptDate').setValue(day);
 var handler = app.createServerHandler('change');
   handler.addCallbackElement(textApptDate).;

DataPicker は正常に動作しますが、スクリプトは正常に動作しません。

エラーはどこですか?

助けてくれてありがとう。

ラファエル

4

1 に答える 1

0

元のスクリプトでは、ハンドラー関数 ( var apptDate = e.parameter.apptDate; ) の日付の値は文字列です。コード内の次の操作により、その文字列が日付オブジェクトに変換されます。

ウィジェットを dateBox に置き換えるとvar appDate、ハンドラの値は文字列ではなくなり、すでに日付オブジェクトになっています。したがって、次の文字列操作は機能しません。

2 つの可能性があります。

  1. この日付オブジェクトを文字列に変換し、コードをそのまま保持します (ただし、これは一種の「取り消し/やり直し」であるため、私の意見では少しばかげています)。
  2. その違いを考慮して、日付オブジェクトを開始値として使用して時間設定に直接移動します (これははるかに効率的で「エレガント」になります)。
于 2013-07-21T21:25:22.970 に答える