我在我的 XPage 上遇到了一些有趣的 javascript 代码行为
//'rdoGeschlecht1' is present on page Basis (no problems there),
//but not on page 'Stufe1'.
var level = "Stufe1";
if(level == "Basis")
{
alert("1");
// var rdoGeschlecht1 = '#{javascript:getClientId("rdoGeschlecht1")}';
}
else if(level == "Stufe1")
{
alert("2");
}
上面的代码在不存在该元素的页面上执行时总是以错误结尾 - “Ungültiger Komponentenname rdoGeschlecht1 kann in getClientId nicht aufgelöst werden。” - 在我看来,Notes 会尝试解析对象 ID,即使该行未在实际执行中使用,甚至在未注释时也是如此。
我当然找到了一个快速而肮脏的解决方法,但我肯定不是第一个偶然发现这种行为的人,我真的很想知道有经验的 XPages 程序员会如何处理这个问题?