在我实现一个问卷调查的场景中,想让用户主动拖动这个slider评分条,页面编写时,不给slider中的value属性赋初值,min为0,max为10,默认Slider显示为0,点击提交获取不到Value 值,此时提示用户没有进行评分。拖动到任意位置(1-10),再拖回至0,点击提交在表单信息中还是获取不到Slider Value值,这里是不是应该提交的时候Value应该为0。
__
__
如果给slider设定一个初始值-1,min为0,max为10,点击提交可以获取value:-1,拖动到任意位置(1-10),再拖回至0,点击提交在表单信息中还是获取不到Slider Value值,这里是不是应该提交的时候Value应该为0。
__
__
但是如果把min设置为1,上述问题就不存在了。
还做了一些测试样例
测试样例
value:0,min:0,max:10,点击提交获取不到值,拖动后回到0获取不到值
value:无,min:0,max:10,点击提交获取不到值,拖动后回到0获取不到值
value:-1,min:0,max:10,点击提交获取-1,拖动后回到0获取不到值
value:0,min:1,max:10,点击提交获取不到值,拖动后回到1获取到1
value:无,min:1,max:10,点击提交获取不到值,拖动后回到1获取到1
value:-1,min:1,max:10,点击提交获到-1,拖动后回到1获取到1
关键点在min为0,value为0也存在问题
WXML代码:
< form bindsubmit = "formSubmit" > < slider name = "score" min = "0" max = "10" bindchange = "slideChange" step = "1" show-value = 'true' /> < button formType = "submit" type = "primary" >提交
|
JS代码
// pages/test/test.js Page({ /** * 页面的初始数据 */ data: { }, slideChange: function (e) { this .setData({ changeData :e.detail.value }) }, formSubmit: function (e){ this .setData({ submitData: e.detail.value.score }) } })· |