单选框控制隐藏显示附近的输入框

本文介绍了一个基于jQuery的自定义插件示例,该插件能够根据单选按钮的状态控制文本输入框的显示与隐藏。通过为单选按钮指定特定的ID规则,插件可以根据选择的不同选项来切换文本框的可见性并清空其内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(function ($) {
    $.fn.hideInput = function (options) {
        var defaults = {
            rule: "id"  // 如果把规则设置在输入框的属性上 例如 id=shop-1-2  说明: 单选框名称-选中项索引号-选中项索引号-选中项索引号
        }
        var opts = $.extend(defaults, options);
        //执行过程
        this.each(function () {
            var lbl = $(this).css("display", "none");
            var data = $.isArray(opts.rule) ? opts.rule : lbl.find("input:eq(0)").prop(opts.rule);
            var arr = data.split('-');
            var radioName = arr[0];
            var sel = arr.slice(1);
            $("input[name=" + radioName + "]").each(function (index) {
                $(this).click(function () {
                    if (sel.indexOf(index.toString()) != -1) {
                        lbl.css("display", "inline");
                    } else {
                        lbl.css("display", "none").find("input").val("");
                    }
                });
            });
        });
    };
})(jQuery);

$(".hideInput").hideInput();
<div class="left">
 <label><input name="shop" type="radio" class="ace"  value="0" /><span class="lbl"> 店铺1层</span></label>
 <label><input name="shop" type="radio" class="ace"  value="1" /><span class="lbl"> 店铺2层</span></label>                                                      
<label><input name="shop" type="radio" class="ace"  value="2" /><span class="lbl"> 店铺3层</span></label>
 <span class="lbl hideInput"><input type="text" id="shop-1" name="shopBrief" placeholder="店铺位置分区(1楼/2楼)" style="width:30%;" /></span></div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值