【问题标题】:Null value passed as string "null" from listBox with no selection空值作为字符串“null”从 listBox 传递,没有选择
【发布时间】:2013-01-23 00:30:59
【问题描述】:

我正在检查用户是否从列表框中进行了选择。看来,如果没有进行选择,则传递给服务器处理程序的值是“null”而不是 null。这是否按预期工作?

此代码正确测试 selectList 列表框中没有选择。

    Logger.log("e.parameter.selectList"+e.parameter.selectList)
if (e.parameter.selectList === "null") {
 error = true;
 errortext = "no valid region selected";
 Logger.log('error')
}

我期待

    if (!e.parameter.selectList )... to work

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    是的,这是众所周知的。 处理程序中的所有值都作为字符串返回(但 dateBox 值除外,但我不确定)。例如,复选框值返回“真”/“假”而不是真/假(布尔值)。您必须首先解析这些字符串才能获得所需形式的值。 我一般用Utilities.jsonParse(stringValue)

    【讨论】:

    • 我可以确认 dateBox 确实是一个异常并返回一个日期对象,而不是一个字符串。我刚刚使用以下代码对此进行了测试,没有错误:'var date = e.parameter.date; date.setHours(e.parameter.hour,e.parameter.min,0)'
    • 所以行为并不一致。它是否“按预期工作”?或者有人会修复它并破坏那些刚刚围绕一个愚蠢的实现工作的人的代码?
    • @DavidF 如果您在问题跟踪器中报告此问题会很好。code.google.com/p/google-apps-script-issues/issues/list
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-11
    • 1970-01-01
    • 2013-01-28
    • 2013-04-06
    • 2020-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多