javascript - 循环内递增或递减文本框值(非属性)
问题描述
循环中有输入标签 39 次,如下所示
for (i = 0; i <= 39; i++) {
document.write("<button id='minus'>-</button><input type='text' id='input' value='0' ng-model='number" + i + "'><button id='plus'>+</button><br><br>");
};
let pb = document.getElementById("plus");
let mb = document.getElementById("minus");
let text = document.getElementById("input");
pb.onclick = function() {
let x = text.getAttribute("value");
text.setAttribute("value", ++x);
};
mb.onclick = function() {
let x = text.getAttribute("value");
if (x >= 1) {
text.setAttribute("value", --x);
};
};
但是我需要的是当我在循环中单击旁边的按钮时,使用该特定的 ng-model 编号增加/减少文本框的值。
还有那些为上面的“总计”文本框提供信息的文本框,它显示文本框中所有值的加法。所以只是更新值属性不起作用,有点角度,所以请帮我解决这个问题。
( dev.pfokus.com/product/caponi ) 打开这个 url 并选择产品、数量,它会带你选择颜色,观察控制台的行为。在颜色框中写一些数字,总字段得到更新。请检查控制台并帮助我解决添加 +/- 按钮的问题。
(justpaste.it/5tbwj)这是我网站目录中 angular js 指令中的代码。这是从文本框中获取输入值的内容,请尝试使用 +/- 按钮触发它。
这些是当我将“1”添加到文本框以及通过键盘输入将“2”添加到同一文本框时的控制台图像。
提前致谢 :)
解决方案
看看 JSFiddle:https ://jsfiddle.net/dLuzemrx/
我也是 Angular JS 的新手,只是做了有问题的工作。任何优化或更正,请随时进行。
JS代码:
var dataHTML = "";
for (i = 0; i <= 39; i++) {
dataHTML += '<button ng-click="value_'+ i +' = value_'+ i +' - 1">-</button><input ng-value="value_'+ i +'"><button ng-click="value_'+ i +' = value_'+ i +' + 1">+</button><br><br>';
}
document.querySelector('[ng-app="myApp"]').innerHTML = dataHTML;
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.myVar = "Hello World!";
for (i = 0; i <= 39; i++) {
$scope['value_'+ i] = 1;
}
});
推荐阅读
- pandas - 如何更新包含来自 pandas df 的自动编号列的 MS Access 表?
- blueprism - 如何在 BluePrism 中使用 Mapiex 保存电子邮件中的附件?
- javadoc - Checkstyle:如何关闭“SummaryJavadoc:Javadoc 的第一句缺少结束句点”。
- c++ - 如何使用 gnu_parallel 运行多个可执行和/或 bash 脚本?
- node.js - 创建 React App 不会在开发中使用 Express 重新加载
- android - 无法使用 google-api-php-client 为 Web App iframe 创建 WebToken
- php - 插入时,列数与第 1 行错误处的值计数不匹配
- date - Elixir Ecto Phoenix - 比较字符串日期格式“YYYY-MM-DD”与#DateTime<2017-12-01 13:31:14.987000Z>
- python - __init__ 可以在调用 super 后自动执行代码吗?
- twilio - Twilio 声音
带字段类型