javascript - 如何以用户在 jquery 中输入的次数显示相同的 div?
问题描述
我有带支票付款的 POS 系统。当收银员根据输入的支票输入支票号码时,应生成支票明细表。
例如:如果他输入数字 5,同一个表单应该显示五次我如何用 jquery 做到这一点。
我已经完成了到目前为止我所做的事情!提前致谢
这是用户输入
<input type="number" class="form-control" id="numberOfChq" >
<a id="come" class="btn btn-primary">Submit</a>
这是要重复的 div
<div id="chk_list" hidden></div>
这是我只尝试显示一次的 jquery,我想显示尽可能多的用户输入
$("#come").click(function(){
var chqNumebr = $("#numberOfChq").val();
var i;
for (i= 1; i <= chqNumebr; i++ ){
var chqSh = $("#chk_list").slideDown("slow");
}
});
解决方案
试试下面的。
首先,我们需要一些东西来添加新的 div,所以我为此创建<div id="output"></div>
了。
按下提交后,您会看到根据用户输入的数字添加了新的 div。但是我们必须确保#output
每次函数运行时都清空,否则新创建的 div 只会继续添加到现有的 div 上。
其次,如果我们将有多个实例,#chk_list
那么它不应该有一个 ID,因为所有 ID 都应该是唯一的。相反,我们将使用一个类。
$("#come").on('click', function() {
var chqNumebr = $("#numberOfChq").val();
//empty divs that are currently inside of #output
$('#output').empty();
for (var i = 0; i < chqNumebr; i++) {
$('#output').append('<div class="chk_list"></div>')
}
});
.chk_list {
width: 50px;
height: 30px;
background: red;
margin-top: 10px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="number" class="form-control" id="numberOfChq">
<a id="come" class="btn btn-primary">Submit</a>
<div id="output"></div>
推荐阅读
- jquery - 数据表卡在无法读取未定义的属性长度
- javascript - d3 hierarchy ability to average children node values
- android-emulator - Android 模拟器 29.2.0.0 段错误
- file - Kotlin,我如何对从 OnActivityResult 返回的文件进行 base64Encode
- apache-zookeeper - 由于 java.lang.ClassNotFoundException: org.apache.zookeeper.server.quorum.QuorumPeerMain,zookeeper 启动了
- php - Laravel 使用不同的表验证护照
- sql - Databricks:SQL 查询的等效代码
- list - Erlang 选择最高出价
- python - 如何在 Python 的 for 循环中创建动态数组
- html - Angular:./assets 和 /assets 之间的区别