javascript - 检查我的codepen。在输入点击时触发html按钮

标签 javascript jquery css enter keycode

<分区>


这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助 future 的读者。

关闭 6 年前

所以检查我的 codepen http://codepen.io/urketadic/pen/JKbddV 我需要按钮来播放它的动画,即使我不点击它而是按回车键。 我需要做什么?

      $(document).ready(function() {
  var secondsPerMin = 60;
  var minsPerHour = 60;
  var hoursPerDay = 24;
  var daysPerWeek = 7;
  var weeksPerYear = 52;
  var yearsAlive;
  var secondsPerDay = secondsPerMin * minsPerHour * hoursPerDay;

  function calculateSeconds(yearsAlive) {
    $("#output").val("For "+ yearsAlive + " years you have lived " + secondsPerDay * daysPerWeek * weeksPerYear * yearsAlive + " seconds.");
  }

$("#inpute").on("keydown", function(e) {
    if (e.keyCode == 13) {
      e.preventDefault();
      var yearsAlive = $('#inpute').val();
    if (isNaN(yearsAlive)) {
     $("#output").html("Your age must be a number.");
    }
    else {
      calculateSeconds(yearsAlive);
    }
  }
  });

  $("#buttoninput").on('click', function() {
    var yearsAlive = $('#inpute').val();
    if (isNaN(yearsAlive)) {
     $("#output").html("Your age must be a number.");
    }
    else{
    calculateSeconds(yearsAlive);
    }
  });
});

最佳答案

请看下面的方法:

$(document).ready(function() {
  var secondsPerMin = 60;
  var minsPerHour = 60;
  var hoursPerDay = 24;
  var daysPerWeek = 7;
  var weeksPerYear = 52;
  var yearsAlive;
  var secondsPerDay = secondsPerMin * minsPerHour * hoursPerDay;

  function calculateSeconds(yearsAlive) {
    $("#output").val("For " + yearsAlive + " years you have lived " + secondsPerDay * daysPerWeek * weeksPerYear * yearsAlive + " seconds.");
  }

  $("#buttoninput").on('click', function() {
    var yearsAlive = $('#inpute').val();
    if (isNaN(yearsAlive)) {
      $("#output").html("Your age must be a number.");
    } else {
      calculateSeconds(yearsAlive);
    }
  });

  $("#inpute").on("keydown", function(e) {
    if (e.keyCode == 13) {
      e.preventDefault();
      $("#buttoninput").click();
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

<div class="container">
  <div class="jumbotron">
    <div class="page-header">
      <h1 class="text-center animated bounceInDown">How old are you? <small>IN SECONDS.</small></h1>
    </div>


    <div class="input">
      <input type="text" id="inpute" class="col-xs-12 col-sm-6 col-md-8 animated bounceInLeft" placeholder="write age">
      <button type="submit" id="buttoninput" class="col-sm-4 btn btn-default btn-danger animated bounceInRight">Calculate</button>
    </div>

    <div class="output">
      <output id="output" placeholder="output" class="col-xs-12">
    </div>

  </div>

关于javascript - 检查我的codepen。在输入点击时触发html按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38012033/

上一篇:html - 使用标签时按钮不会与输入字段对齐

下一篇:javascript - Squarespace 上的 Google map API

相关文章:

javascript - 如何用参数和模板文字来描述函数?

javascript - 有效的对象构造函数

javascript - 当处理程序需要接收回调函数时删除 jQuery 事件监听器

javascript - 来自 javascript 的同步 Json 调用

javascript - "Add to favourites"更改类和 innerHTML 的按钮

javascript - 在 Javascript 中从经度和纬度获取城市、州、邮政编码

javascript - Angular JS 中的堆叠条形图(高图表)

javascript - 按钮事件和点击深度

html - CSS 表格边框 - 仅水平且具有独特的表格和标题边框

html - 使用 html 和 css 的导航栏不可点击