首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EditBox fieldInput.getValue()和空格

EditBox fieldInput.getValue()和空格
EN

Stack Overflow用户
提问于 2017-08-24 23:00:30
回答 3查看 45关注 0票数 0

这是问题所在。我有一个editBox,服务器端的JavaScript试图通过一个名为Add的按钮的onClick事件来检索它的值。它一直工作,直到值中有空格,然后它什么都不检索。onClick事件的代码如下:

代码语言:javascript
复制
println("Button Clicked");
try{
var forkNumberInput:com.ibm.xsp.component.xp.XspInputText = 
getComponent("forkNumberInput");
var forkNum = forkNumberInput.getValue();
viewScope.ForkNum = forkNum;
println(forkNum);
} catch(e){
println( Error in Add button: " + e.toString());
}

当文本中有一个空格时,不会填充viewScope,也不会向服务器日志中写入任何内容,甚至不会写入“按下按钮”。服务器日志中未写入任何错误。

EN

回答 3

Stack Overflow用户

发布于 2017-08-24 23:24:11

如果没有打印"Button Clicked“,最有可能的原因是存在验证错误。添加一个Display Errors控件以确保不是这种情况。

票数 4
EN

Stack Overflow用户

发布于 2017-08-25 01:38:46

我赞同Paul关于添加错误控制的建议。除此之外:当你想做的只是获取值的时候,尽量避免使用getComponent()。扩展到XPages的JSF的思想是“数据绑定”。控件被绑定到某些数据源以获取它们的值,您可以与这些数据源进行交互。getComponent()是用来在你需要操作其他东西的时候使用的。

因此,您可以绑定您范围变量viewScope.forkNum控件,这样就完成了。然后,您的按钮从那里获取值,并执行它需要做的事情。

所以总而言之:控件需要绑定。数据存在于模型(而不是控件)中

票数 2
EN

Stack Overflow用户

发布于 2017-08-25 01:34:27

谢谢你,保罗--你把我引向了正确的方向。原来在Properties > data > validators下有一个validateConstraint。我移除了validateConstraint,它就开始工作了。当您将设计元素从一个自定义控件复制到另一个自定义控件时,就会发生这种情况。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45864926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档