javascript - 获取由选中的复选框创建的值多个按钮
问题描述
我想从按钮中获得价值。选中复选框时会出现此按钮。
如果只有一个按钮,没关系,但是当有这么多按钮时,它会获取最后一个按钮数据属性,这不好
$('#other-products').on('change', function() {
var selectedProducts = [];
var listProductsCtrl = $('.list-products');
listProductsCtrl.html('');
$('#other-products input[type="checkbox"]:checked').each(function() {
selectedProducts.push($(this).attr('name'));
var showtimesAsString = '<button class="number" data-label="'+$(this).attr('name')+'">'+selectedProducts.join('</button> <button class="test">')+'</button>';
listProductsCtrl.html(showtimesAsString);
});
$('.number').click(function(){
alert($(this).attr('data-label'));
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="other-products">
<input type="checkbox" name="First" value="1">
<input type="checkbox" name="Second" value="2">
<input type="checkbox" name="Third" value="3">
</div>
<span class="list-products"></span>
解决方案
对于第 2 和第 3,您附加的是类test
而不是数字,并且没有data-label
属性
所以在这里我只是在这里显示text()
。
$('#other-products').on('change', function() {
var selectedProducts = [];
var listProductsCtrl = $('.list-products');
listProductsCtrl.html('');
$('#other-products input[type="checkbox"]:checked').each(function() {
selectedProducts.push($(this).attr('name'));
var showtimesAsString = '<button class="number" data-label="'+$(this).attr('name')+'">'+selectedProducts.join('</button> <button class="test">')+'</button>';
listProductsCtrl.html(showtimesAsString);
});
$('.number, .test').click(function(){
alert($(this).text());
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="other-products">
<input type="checkbox" name="First" value="1">
<input type="checkbox" name="Second" value="2">
<input type="checkbox" name="Third" value="3">
</div>
<span class="list-products"></span>
推荐阅读
- tableau-api - 有没有办法在画面中参数化 Contains() 函数
- c - 附加到字符串使其为空,C
- javascript - 将 React 元素 js 代码转换为 JSX 的工具
- android - 如何以编程方式将自定义按钮添加到 AlertDialog?
- java - 我可以转换地图吗
> 进入 MultiValueMap - python - 遍历结构化文件的 2 列
- python - 使用 lxml、xpath 和 css 选择器的 Python 脚本也返回空列表
- wordpress - WordPress Nginx 重写规则
- angular - 为什么在 Web API 中启用 CORS 时收到 OPTIONS 请求?
- wcf - 打开 WCF 服务主机连接时出错