light7的picker无法控制选择数值范围的解决办法

1,本来满分是10分,但使用默认的picker选择器,可能回选择到10.9分,所以写了下面方法来控制打分在0到10分之间

//初始化打分选择器
var OpenPicker = function (selector,maxInt,maxDecimal) {
var template='<header class="bar bar-nav">
<span class="button pull-right close-picker">确定</span>
<h1 class="title">请选择分值</h1>
</header>';
var intArr = new Array();
for (var i = 0; i <= maxInt; i++) {
intArr.push(i);
}
var decimalArr = new Array();
for (var i = 0; i <= maxDecimal; i++) {
decimalArr.push(i);
}
$(selector).picker({
toolbarTemplate: template,
cols: [
{
textAlign: 'center',
values: intArr,
},
{
textAlign: 'center',
values: '.'
},
{
textAlign: 'center',
values: decimalArr
},
{
textAlign: 'center',
values: '分'
}
]
});
$("body").on("change",selector,function () {
var v = parseInt($(selector).val());
if (v == maxInt) {
$(selector).picker("setValue", [maxInt, , 0]);
}
});
}

调用的时候只需要一句初始化就可以了

 OpenPicker("#WS_SCORE_BLACKBOARD", 10, 9);

其中10为整数位最大值,9为小数位最大值。这样只能选择选择0到10之间的整数和小数,而不能超过10了

原文地址:https://www.cnblogs.com/sharestone/p/10649341.html