我正在使用Dojo货币文本框,并且想要检查ssjs,如果该框是空的。
目前我正在使用它:
if (wfDoc.getItemValueString("InvestmentAmount") == "")
但是这段代码总是告诉我,即使我输入了一个值,该框也是空的。那么如何用ssjs检查字段是否为空?
答案 0 :(得分:2)
Dojo Currency Text Box将值存储为数字,Dojo Number Text Box也是如此。 Dojo扩展库控件基于相应的客户端Dojo dijits。因为它们都只是扩展Dojo Validation Text Box的HTML小部件,所以它们在控件名称中有“Text”。记住Dojo是一个基于Web的客户端Javascript框架,所以它只能处理文本值。但是因为它们被集成到具有服务器端功能的XPage中,Dojo货币文本框和Dojo数字文本框将值转换为正确的后端数据类型,所以是一个数字。
在数字字段上执行getItemValueString()会返回一个空字符串。因此Per对于使用getValue()是正确的。
答案 1 :(得分:0)
我做了一个简短的测试,这应该工作。
<xe:djCurrencyTextBox
id="djCurrencyTextBox1"
value="#{document1.test}">
</xe:djCurrencyTextBox>
<xp:button
value="test"
id="button1">
<xp:eventHandler
event="onclick"
submit="true"
refreshMode="complete">
<xp:this.action><![CDATA[#{javascript:view.postScript("window.alert('Test"+java.lang.String.valueOf(document1.getValue('test')==null)+"');");}]]></xp:this.action>
</xp:eventHandler>
</xp:button>