javascript - 调用同一个 JavaScript 函数 timepicker 两次

标签 javascript

我在两次调用相同的 javascript 函数时遇到问题。当我运行代码时,第一个 id="time"的输入字段有效,但第二个 id="time1"的输入字段不起作用。

var timepicker = new TimePicker('time', {
  lang: 'en',
  theme: 'dark'
});
timepicker.on('change', function(evt) {

  var value = (evt.hour || '00') + ':' + (evt.minute || '00');
  evt.element.value = value;
});


var timepicker1 = new TimePicker('time1', {
  lang: 'en',
  theme: 'dark'
});
timepicker1.on('change', function(evt1) {

  var value1 = (evt1.hour || '00') + ':' + (evt1.minute || '00');
  evt1.element.value = value1;
});
<link href="//cdn.jsdelivr.net/timepicker.js/latest/timepicker.min.css" rel="stylesheet">
<script src="//cdn.jsdelivr.net/timepicker.js/latest/timepicker.min.js">
</script>
<div>
  <input type="text" id="time" placeholder="Time">
</div>
<input type="text" id="time1" placeholder="Time">
</div>

最佳答案

您必须指定目标数组。 所以你的代码看起来像这样:

var timepicker = new TimePicker(['time','time1'], {
  lang: 'en',
  theme: 'dark'
});
timepicker.on('change', function(evt) {
  var value = (evt.hour || '00') + ':' + (evt.minute || '00');
  evt.element.value = value;
  console.log(value);
});
<link href="//cdn.jsdelivr.net/timepicker.js/latest/timepicker.min.css" rel="stylesheet">
<script src="//cdn.jsdelivr.net/timepicker.js/latest/timepicker.min.js">
  </script>
<input type="text" id="time" placeholder="Time">
<input type="text" id="time1" placeholder="Time">

关于javascript - 调用同一个 JavaScript 函数 timepicker 两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52943865/

相关文章:

javascript - 改变元素在 scroll() 上的位置

javascript - 翻转效果,显示另一个图像

javascript - 带有现有选项的 select2 组合框

javascript - 如何只包含应用程序使用的 jQuery 部分

javascript - ES6 类型来表示一个可以反转的键值对象

javascript - css动画后点击事件丢失

javascript - 防止未经允许的粘贴到文本输入中

Javascript if 函数检查

javascript - 让 jQuery 和 GM_addStyle 在基于有效的 Greasemonkey 脚本的 Chrome 用户脚本中工作

Javascript:函数中的变量重新声明导致未定义