数字框(numberbox)用于让用户仅能输入数字的值。它可以把输入元素转换为不同类型的输入(比如:数字 numeric、百分比 percentage、货币 currency,等等)。更多的输入类型依赖 'formatter' 和 'parser' 函数来定义。
1、用法
(1)、从标记创建数字框(numberbox)。
- <input type="text" class="easyui-numberbox" value="100" data-options="min:0,precision:2">
(2)、使用 javascript 创建数字框(numberbox)。
- <input type="text" id="nn">
- $('#nn').numberbox({
- min:0,
- precision:2
- });
2、属性
该属性扩展自验证框(validatebox),下面是为数字框(numberbox)添加的属性。
名称 | 类型 | 描述 | 默认值 |
disabled | boolean | 定义是否禁用该字段。 | false |
value | number | 默认值。 |
|
min | number | 允许的最小值。 | null |
max | number | 允许的最大值。 | null |
precision | number | 显示在小数点后面的最大精度。 | 0 |
decimalSeparator | string | 分隔数字的整数部分和小数部分的分隔字符。 | . |
groupSeparator | string | 分隔整数组合的字符。 |
|
prefix | string | 前缀字符串。 |
|
suffix | string | 后缀字符串。 |
|
filter | function(e) | 定义如何过滤被按下的键,返回 true 则接受输入字符。 该属性自版本 1.3.3 起可用。 |
|
formatter | function(value) | 用来格式数字框(numberbox)值的函数。返回显示在框中的字符串值。 |
|
parser | function(s) | 用来解析字符串的函数。返回数字框(numberbox)值。 |
|
3、事件
名称 | 参数 | 描述 |
onChange | newValue,oldValue | 当字段值改变时触发。 |
4、方法
该方法扩展自验证框(validatebox),下面是为数字框(numberbox)添加或重写的方法。
名称 | 参数 | 描述 |
options | none | 返回选项(options)对象。 |
destroy | none | 销毁数字框(numberbox)对象。 |
disable | none | 禁用该域。 |
enable | none | 启用该域。 |
fix | none | 把值固定为有效的值。 |
setValue | none | 设置数字框(numberbox)的值。 $('#nn').numberbox('setValue', 206.12); |
getValue | none | 获取数字框(numberbox)的值。 var v = $('#nn').numberbox('getValue'); alert(v); |
clear | none | 清除数字框(numberbox)的值。 |
reset | none | 重置数字框(numberbox)的值。该方法自版本 1.3.2 起可用。 |
5、实例
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>NumberBox - jQuery EasyUI Demo</title>
- <link rel="stylesheet" type="text/css" href="../css/easyui.css">
- <link rel="stylesheet" type="text/css" href="../css/icon.css">
- <link rel="stylesheet" type="text/css" href="../css/demo.css">
- <script type="text/javascript" src="../js/jquery.min.js"></script>
- <script type="text/javascript" src="../js/jquery.easyui.min.js"></script>
- </head>
- <body>
- <div style="margin:20px 0;"></div>
- <div class="easyui-panel" style="width:800px;padding:60px 100px;">
- <div style="margin-bottom:20px">
- <div>List Price:</div>
- <input class="easyui-numberbox" precision="2" value="234.56545"></input>
- </div>
- <div style="margin-bottom:20px">
- <div>Amount:</div>
- <input class="easyui-numberbox" value="100.223565"></input>
- </div>
- <div style="margin-bottom:20px">
- <div>width: 100%</div>
- <input class="easyui-numberbox" precision="2" value="234.56" style="width:100%">
- </div>
- <div style="margin-bottom:20px">
- <div>width: 50%</div>
- <input class="easyui-numberbox" value="100" style="width:50%">
- </div>
- <div style="margin:20px 0;"></div>
- <table>
- <tr>
- <td>Number in the United States</td>
- <td><input class="easyui-numberbox" value="1234567.89" data-options="precision:2,groupSeparator:','"></input></td>
- </tr>
- <tr>
- <td>Number in France</td>
- <td><input class="easyui-numberbox" value="1234567.89" data-options="precision:2,groupSeparator:' ',decimalSeparator:','"></input></td>
- </tr>
- <tr>
- <td>Currency:USD</td>
- <td><input class="easyui-numberbox" value="1234567.89" data-options="precision:2,groupSeparator:',',decimalSeparator:'.',prefix:'$'"></input></td>
- </tr>
- <tr>
- <td>Currency:EUR</td>
- <td><input class="easyui-numberbox" value="1234567.89" data-options="precision:2,groupSeparator:',',decimalSeparator:' ',prefix:'€'"></input></td>
- </tr>
- <tr>
- <td></td>
- <td><input class="easyui-numberbox" value="1234567.89" data-options="precision:2,groupSeparator:' ',decimalSeparator:',',suffix:'€'"></input></td>
- </tr>
- </table>
- <div style="margin-bottom:20px">
- <div>Amount:</div>
- <input class="easyui-numberbox" data-options="min:10,max:90,precision:2,required:true">
- </div>
- <div style="margin-bottom:20px">
- <div>Weight:</div>
- <input class="easyui-numberbox" data-options="min:10,max:90,required:true">
- </div>
- <div style="margin-bottom:20px">
- <div>Age:</div>
- <input class="easyui-numberbox" data-options="min:0,max:100,required:true">
- </div>
- </div>
- </body>
- </html>