3

我有一个不起作用的功能。我不知道当我想找出变量是否不为空然后显示/写入变量时的语法是什么?

function contactUsMailer(e) {
try {
var recipient = "test@test.dk";
var timestamp = e.values[0];
var email = e.values[1];
var buffet = e.values[12];    
var message = 'Kantine Rekvisition'+'<br>'

    +'Afdeling:        '+e.values[2]+'<br>'
    +'Afd. nr.:        '+e.values[3]+'<br>'
    +'Til dato/kl.:    '+e.values[8]+'<br>'+'<br>'

    **if (buffet!='') {
      +'Antal Buffet: '+ buffet + '<br>'**

    var body = message;
 var advancedArgs = {htmlBody:body, replyTo:email};
 MailApp.sendEmail(recipient, "Kantine Rekvisition", body, advancedArgs);
} catch(e){
 MailApp.sendEmail(recipient, "Error - Contact Us Form", e.message);
}
}
4

2 回答 2

4

你可以简单地使用:

if (buffet) {
    // buffet is not undefined, null, false, 0 or empty string
}

您现有的条件buffet!=''也应该有效,请记住这null!=''也是真实的。

编辑

顺便说一句,在字符串连接中使用,您应该使用三元运算符:

var message = 'Kantine Rekvisition'+'<br>'
  +'Afdeling:        '+e.values[2]+'<br>'
  +'Afd. nr.:        '+e.values[3]+'<br>'
  +'Til dato/kl.:    '+e.values[8]+'<br>'+'<br>'
  +(buffet ? 'Antal Buffet: '+ buffet + '<br>' : '');
于 2012-10-10T12:10:26.880 回答
0

您可以像这样检查变量是否为空白..

if(variable.length != 0){
   // not blank
}else{
   // blank
}
于 2012-10-10T12:04:26.877 回答