收藏
回答

prseFloat()函数在Android上没问题,在iOS上是NaN,有谁知道什么原因吗?

这是输入框:

<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。

有大佬碰到这个问题吗?



最后一次编辑于  11-20
回答关注问题邀请回答
收藏

2 个回答

  • 🇻 🇰 🇮 🇳 🇬ʷᵃⁿᵍ
    🇻 🇰 🇮 🇳 🇬ʷᵃⁿᵍ
    11-20

    this.data.shoushu = parseFloat(value);

    这样给 this.data 赋值你不会心痛吗

    11-20
    赞同 1
    回复 1
    • archerLj
      archerLj
      11-20
      😭,这里插入代码的时候给弄乱了
      11-20
      回复
  • archerLj
    archerLj
    11-20

    刚重新把代码删了重写了一遍就可以了,真是坑

    11-20
    赞同
    回复
问题标签