Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript函数集数据重用_Javascript_Function - Fatal编程技术网

Javascript函数集数据重用

Javascript函数集数据重用,javascript,function,Javascript,Function,谢谢你来帮忙。我想不出更好的题目来回答这个问题。但是请帮我做这个 我有多个输入字段。输入1、输入2、输入3和输入4。下面的函数是input1和input2。我想检查输入数据是否是一个数字,也要检查它是否是粘贴的。和**inputValue1和inputValue2**是我要检查和更改的变量 input1: function (e) { if (Math.abs(e.detail.value.length - this.data.inputValue1.length) != 1) {

谢谢你来帮忙。我想不出更好的题目来回答这个问题。但是请帮我做这个

我有多个输入字段。输入1、输入2、输入3和输入4。下面的函数是input1和input2。我想检查输入数据是否是一个数字,也要检查它是否是粘贴的。和**inputValue1和inputValue2**是我要检查和更改的变量

  input1: function (e) {
    if (Math.abs(e.detail.value.length - this.data.inputValue1.length) != 1) {
      this.setData({
        inputValue1: ''
      })
      return ''
    } else {
      let reg = /^[0-9]*$/
      if (!reg.test(e.detail.value)) {
        this.setData({
          inputValue1: ''
        })
        return ''
      } else {
        this.setData({
          inputValue1:e.detail.value
        })
      }
    }
  },
  input2: function (e) {
    if (Math.abs(e.detail.value.length - this.data.inputValue2.length) != 1) {
      this.setData({
        inputValue2: ''
      })
      return ''
    } else {
      let reg = /^[0-9]*$/
      if (!reg.test(e.detail.value)) {
        this.setData({
          inputValue2: ''
        })
        return ''
      } else {
        this.setData({
          inputValue2:e.detail.value
        })
      }
    }
  },
因为代码很长,我想重用它,而不是硬编码。这是我的方法

  checkInput:function(INPUT) {
    if (Math.abs(e.detail.value.length - this.data.INPUT.length) != 1) {
      this.setData({
        INPUT: ''
      })
      return ''
    } else {
      let reg = /^[0-9]*$/
      if (!reg.test(e.detail.value)) {
        this.setData({
          INPUT: ''
        })
        return ''
      } else {
        this.setData({
          INPUT:e.detail.value
        })
      }
    }
  },
那么我想用这个

input1: function (e) {
  this.checkInput(inputValue1)
},
input2: function (e) {
  this.checkInput(inputValue2)
},
input3: function (e) {
  this.checkInput(inputValue3)
}
当我尝试这些时,它显示了

ReferenceError:未定义inputValue1

然后我尝试了另一种方法

input1: function (e) {
  this.checkInput(this.data.inputValue1)   
},
这一次显示,

ReferenceError:未定义e


致以最诚挚的问候

您的意思是您不想复制和粘贴,以及您遇到了什么错误?@UdenduAbasili感谢您的评论。我更新了问题。希望这能进一步澄清这个问题。