0

以下のGoogleScriptのコードに問題があります。

私がそうするとき:var Emails = e.parameter.Email; (IN FUNCTION Aut_User)

値を取得できません。未定義のように見えます。値が1つの関数から別の関数に渡されていません。

なにが問題ですか?

function doGet() {
  var app = UiApp.createApplication();
  var grid = app.createGrid(3, 2);
  grid.setWidget(0, 0, app.createLabel('Informações para Login:'));

  var Contactemail = app.createTextBox();
  Contactemail.setName('Email'); 
  grid.setWidget(1, 0, app.createLabel('Email:'));
  grid.setWidget(1, 1, Contactemail);

  var Contactpassword = app.createPasswordTextBox();
  Contactemail.setName('Password'); 
  grid.setWidget(2, 0, app.createLabel('Senha:'));
  grid.setWidget(2, 1, Contactpassword);


  var panel = app.createVerticalPanel();
  panel.add(grid);


  var button = app.createButton('Logar');
  var handler = app.createServerHandler('Aut_User'); 
  handler.addCallbackElement(grid);
  button.addClickHandler(handler);

  panel.add(button);
  app.add(panel);
  return app;
}

function getColIndexByNamelink(colName, ID) {
  var sheet = SpreadsheetApp.openById(ID).getSheets()[0];
  var numColumns = sheet.getLastColumn();
  var row = sheet.getRange(1, 1, 1, numColumns).getValues();
  for (i in row[0]) {
    var name = row[0][i];
    if (name == colName) {
      return parseInt(i) + 1;
    }
  }
  return -1;
}

function Aut_User(e) {
  var ID = "0AqmZV_vU4x5cdFQyOFo2TlE3dkxFYi1rVUk3OUxzYWc";
  var sheet = SpreadsheetApp.openById(ID).getSheets()[0];
  var lastRow = sheet.getLastRow();
  var Emails = e.parameter.Email;  //PROBLEM HERE
  //parametros da outra funcao
  for (var i = 2; i < (lastRow + 1); i++) {
    sheet.getRange("A4").setValue(Emails);
    //conferir os dados
  }
}
4

1 に答える 1

1

コードに間違いがあります:

var Contactpassword = app.createPasswordTextBox();
Contactemail.setName('Password');

ここでの2行目は次のようになります。

Contactpassword.setName('Password');

これは、Aut_User(e)で次のコードを使用して見つけました。

var app = UiApp.getActiveApplication();
var output = '';
for (var i in e.parameter) {
   output += i + ' = ' + e.parameter[i] + '; ';
}

次に、「出力」を読み取れる場所に送信します。「パスワード」の値が入力されたメールアドレスであることがわかりました。

于 2012-08-20T14:24:40.310 に答える