js 实现一个按钮控制表格中所有按钮

1、需要实现的效果:

单选框选中点击 应用全部 按钮之后,表格里面所有的 只读 按钮全部选中
在这里插入图片描述
代码
说明:此效果实现基于 layui 模板,原生JS 实现原理同此.

HTML:

	<input type="radio" name="allEdit" value="可编辑" title="可编辑" checked="">
    <input type="radio" name="allEdit" value="只读" title="只读">
    <input type="radio" name="allEdit" value="隐藏" title="隐藏">
	<input type="button" class="layui-btn layui-btn-sm" id="applyAll" value="应用全部">

模板加载表格中的单选按钮:
说明:在 layui 中,form 标签必须,否则在 应用全部 的时候出现 bug

<script id="operationForm" type="text/html">
    <form action="">
        <input type="radio" name="edit{{d.columnName}}" value="可编辑" title="可编辑" checked="">
        <input type="radio" name="edit{{d.columnName}}" value="只读" title="只读">
        <input type="radio" name="edit{{d.columnName}}" value="隐藏" title="隐藏">
    </form>
</script>

JS

	$("#applyAll").click(function () {
            var val=$('input:radio[name="allEdit"]:checked').val();   // 获取点击的radio
            $("input:radio[name^=\"edit\"]").each(function(){       // 遍历以 name 为 edit 开头的 radio 元素(自己起名)
                if($(this).val() == val){
                    $(this).prop( "checked", true);                       //  给 this 添加 true 属性
                    form.render("radio");									// 更新渲染  form 表单的 radio
                }
            });
        });

另:
在给 获取到的 radio 添加 checked 属性的时候要用 prop,不能用 checked。
1、prop 对于HTML元素本身就带有的固有属性如 href、target、class、checked、select
2、attr 对于HTML元素我们自定义的加在标签中的属性如给标签新加属性deparedId、inputId等自己起名的属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值