onClick在字段javaScript中插入文本/时间

时间:2017-08-27 10:58:43

标签: javascript jquery html css

简而言之,我想只有一个按钮,如果我点击该按钮,它会在我刚刚选择的文本字段中插入一个时间。 (我有20个字段)我不想为每个字段添加一个按钮。

我正在使用这样的东西

<script type="text/javascript">
$(
    function() {

        $('#TIME').click(function() {
            var time = new Date().toLocaleTimeString([], {hour: '2-digit', minute:'2-digit', hour12: false});
            $('#TIME').val(time);
        });

    }
);
</script>


<div class="timebuttons">

</div>

1 个答案:

答案 0 :(得分:1)

在这里,您可以使用解决方案(以及验证)https://jsfiddle.net/4zyy9tr7/

$(document).ready(function() {
  var $focused = "";

  $('.setTime').focus(function(){
      $focused = $(this);
  });

  //Set time in last selected input field when the button is clicked    
  $('#btnSetTime').click(function() {
      var time = new Date().toLocaleTimeString([], {hour: '2-digit', minute:'2-digit', hour12: false});
      if($focused != "")
        $focused.val(time);
  });
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="setTime" value="" />
<input type="text" class="setTime" value="" />
<input type="text" class="setTime" value="" />
<input type="text" class="setTime" value="" />
<button id="btnSetTime">Set Time</button>

验证: 如果您还没有选择input textbox&amp;您点击了设置时间 button,您将看不到任何错误。

我使用了jQuery focus方法。

更新了代码

 $('#btnSetTime').click(function() {
  var time = new Date().toLocaleTimeString([], {hour: '2-digit', minute:'2-digit', hour12: false});
  if($focused != "")
    $focused.val(time);

  return false;
 });