这是输入框:
<input class="cjj_input" value="{{cjj}}" placeholder="成交价" bindinput="cjjInput" type="digit"></input><input class="shoushu_input" value="{{shoushu}}" placeholder="手数" bindinput="shoushuInput" type="number"></input> |
这是变量定义和接受值的地方:
data: { cjj: 0, // 当前点数 shoushu: 0, // 手数 }, cjjInput: function (e) { var value = e.detail.value; this.data.cjj = parseFloat(value); }, shoushuInput: function (e) { var value = e.detail.value; this.data.shoushu = parseFloat(value); }, |
上面两个输入框,同样的代码,在Android上都没问题,在iOS上cjjInput方法里的parseFloat(value)没问题,而shoushuInput方法里的parseFloat(value)每次都是NaN,这里的value都是数字类型字符串,打印的value类型也都是string。
有大佬碰到这个问题吗?

this.data.shoushu = parseFloat(value);这样给 this.data 赋值你不会心痛吗
刚重新把代码删了重写了一遍就可以了,真是坑