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了

 

posted @ 2019-04-03 15:46  sharestone  阅读(524)  评论(0编辑  收藏  举报