javascript - 如何在每次单击按钮时添加一个数字并返回总数?
问题描述
我得到了按钮,当单击它们时,它们返回当前并添加该数字,效果很好,但是带有 30 的按钮我想在第一次输出时返回 30,当再次单击以再次添加 30 时,输出为 60、90 , 120 ........
HTML
<button data-value="1" class="numbs">1</button>
<button type="button" data-value="2" class="numbs">2</button>
<button type="button" data-value="3" class="numbs">3</button>
<button type="button" data-value="4" class="numbs">4</button>
<button type="button" data-value="30" class="numb">+30s</button>
<input type="number" min="1" id="inputOutput">
JS/JQUERY
$(document).ready(function(){
$('.numbs').click(function add(ev){
var values = ev.currentTarget.dataset.value;
console.log(values);
var inputOutput = $('#inputOutput');
var current = inputOutput.val();
inputOutput.val(current + values);
ev.stopPropagation();
});
//for +30s button
var $_30sec = $('.numb');
var num ;
var x = 30;
$_30sec.click(function addthithy(ev){
num = ev.currentTarget.dataset.value;
var total = Math.floor(num)+Math.floor(30);
var inputOutput = $('#inputOutput');
//this prints out 30 only;
var current = inputOutput.val(num);
// console.log(num);
//this prints out 60 only;
inputOutput.val(total);
console.log(total);
});
});
我实际上不知道如何在每次单击按钮时将增量添加到 30; 如果之前有人问过这个问题,但已经到处搜索但找不到我需要做的事情,请提前道歉;
解决方案
使用以下代码更新您的代码
$(document).ready(function () {
$('.numbs').click(function add(ev) {
var values = ev.currentTarget.dataset.value;
console.log(values);
var inputOutput = $('#inputOutput');
var current = inputOutput.val();
inputOutput.val(current + values);
ev.stopPropagation();
});
//for +30s button
var $_30sec = $('.numb');
var num;
var x = 30;
$_30sec.click(function addthithy(ev) {
var inputOutput = $('#inputOutput');
var clickCount = $(this).attr('click-count');
inputOutput.val(parseInt(clickCount) * 30);
var newClickCount = parseInt(clickCount) + 1;
$(this).attr('click-count', newClickCount);
});
});
<button data-value="1" class="numbs">1</button>
<button type="button" data-value="2" class="numbs">2</button>
<button type="button" data-value="3" class="numbs">3</button>
<button type="button" data-value="4" class="numbs">4</button>
<button type="button" data-value="30" class="numb" click-count=1>+30s</button>
<input type="number" min="1" id="inputOutput">
推荐阅读
- django - Django - 在创建父对象时创建所有外键对象
- spring - 如何在 Spring Boot 中重定向 ftl?
- c# - c#自定义UITypeEditor在按下确定和取消后没有触发
- php - Codeignighter 页面数据未显示
- c# - 通过 javascript 在两个项目和用户之间进行 CORS
- ember.js - 如何使用 ember serve 启用强制列表
- sql - 如何以最高效的方式从表中删除大量记录?
- java - 为什么 ArrayBlockingQueue 构造函数需要在 JDK 8 中锁定
- opengl - 估计 GLSL 着色器所需的寄存器数量
- ios - 集成 React Native 后应用程序图标变为空白