向 Dojo 数据网格列 Xpages 添加约束
Adding constraint to Dojo Data Grid Column Xpages
如何在 Dojo 布局中向 djxDataGridColumn 添加货币约束
我将以编程方式使用:
{ name: 'Amount', field: 'col5', formatter: formatCurrency, constraint: {currency: 'EUR'}, widgetClass: HorizontalSlider, width: 10}
但是我怎样才能在 XPages 中实现它:
<xe:djxDataGridColumn id="djxDataGridColumn10" editable="true" label="Amount " field="Amount " width="50px" cellType="dojox.grid.cells._widget"
formatter="formatCurrency">
</xe:djxDataGridColumn>
我需要能够在编辑网格时验证列输入
function formatCurrency(value){
return isNaN(value) ? '...' : currency.format(value, {currency: "EUR"});
}
输入字符串时的错误信息
西蒙,
您可以限制允许用户键入的键盘键,以防止他们输入字母字符。此选项不会验证数字内容,如果需要,您必须单独执行此操作。
您需要创建一个作用于 onkeypress 事件的客户端函数。
代码类似于:
var keyCode = event.keyCode;
if((keyCode >= 48 && keyCode <= 57) || keyCode == 8 || keyCode == 46){
event.returnValue = true;
}else{
event.returnValue = false;
}
此示例允许数字以及退格键和删除键。如果您想允许分数分隔符,请修改它以允许它。查找键码的一种简单方法是使用 http://keycode.info/
这是一篇博客 post 我上个月写的关于这个主题的博客:http://notesspeak.blogspot.com/2015/11/limiting-keyboard-input-in-xpages.html
尽管博客 post 标题,但这只是客户端 javascript 而不是特定于 XPages。您也可以使用 dojo 或 jQuery 来完成同样的事情。
定义不带 cellType 的列 属性
<xe:djxDataGridColumn
id="djxDataGridColumn10"
editable="true"
label="Amount "
field="Amount"
width="50px"
formatter="formatCurrency">
</xe:djxDataGridColumn>
并将您的 CSJS 代码更改为
require(["dojo/currency"]);
function formatCurrency(value){
return isNaN(value) ? '...' : dojo.currency.format(value, {currency: 'EUR'});
}
约束 {currency: 'EUR'}
将值转换并显示为欧元货币 €:
如果值无效,则显示“...”。
如何在 Dojo 布局中向 djxDataGridColumn 添加货币约束
我将以编程方式使用:
{ name: 'Amount', field: 'col5', formatter: formatCurrency, constraint: {currency: 'EUR'}, widgetClass: HorizontalSlider, width: 10}
但是我怎样才能在 XPages 中实现它:
<xe:djxDataGridColumn id="djxDataGridColumn10" editable="true" label="Amount " field="Amount " width="50px" cellType="dojox.grid.cells._widget"
formatter="formatCurrency">
</xe:djxDataGridColumn>
我需要能够在编辑网格时验证列输入
function formatCurrency(value){
return isNaN(value) ? '...' : currency.format(value, {currency: "EUR"});
}
输入字符串时的错误信息
西蒙,
您可以限制允许用户键入的键盘键,以防止他们输入字母字符。此选项不会验证数字内容,如果需要,您必须单独执行此操作。
您需要创建一个作用于 onkeypress 事件的客户端函数。
代码类似于:
var keyCode = event.keyCode;
if((keyCode >= 48 && keyCode <= 57) || keyCode == 8 || keyCode == 46){
event.returnValue = true;
}else{
event.returnValue = false;
}
此示例允许数字以及退格键和删除键。如果您想允许分数分隔符,请修改它以允许它。查找键码的一种简单方法是使用 http://keycode.info/
这是一篇博客 post 我上个月写的关于这个主题的博客:http://notesspeak.blogspot.com/2015/11/limiting-keyboard-input-in-xpages.html
尽管博客 post 标题,但这只是客户端 javascript 而不是特定于 XPages。您也可以使用 dojo 或 jQuery 来完成同样的事情。
定义不带 cellType 的列 属性
<xe:djxDataGridColumn
id="djxDataGridColumn10"
editable="true"
label="Amount "
field="Amount"
width="50px"
formatter="formatCurrency">
</xe:djxDataGridColumn>
并将您的 CSJS 代码更改为
require(["dojo/currency"]);
function formatCurrency(value){
return isNaN(value) ? '...' : dojo.currency.format(value, {currency: 'EUR'});
}
约束 {currency: 'EUR'}
将值转换并显示为欧元货币 €:
如果值无效,则显示“...”。