js根据name获取input,textarea的值以及判断checkbox是否选中

需求:

系统配置里有输入框,文本域,开关三种配置项,每一项后有保存按钮,点击保存时获取到该配置强的键值对传到后台

代码示例

{extend name="common/base"}
{block name='body-content'}
        <!-- 以下是正文 -->
        <div class="layui-body">
            <div style="padding: 15px">
                <div class="system-set">
                    <div class="set-top">模块设置</div>
                    <div class="set-inner">
                        <form class="layui-form" action="">
                            <div class="layui-row">


                                {volist name="list" id="vo"}
                                {switch $vo['view_type']}
                                {case 0}
                                <div class="layui-col-xs6 item">
                                    <div class="title-item">{$vo['conf_explain']}</div>
                                    <div class="item-center">
                                        <div class="layui-input-block">
                                            <input type="text" name="{$vo['conf_name']}" lay-verify="title" autocomplete="off"
                                                   value='{$vo['conf_value']}' class="layui-input">
                                        </div>
                                        <button class="layui-btn" type="button" οnclick="save('{$vo['conf_name']}',{$vo['view_type']})">保存</button>
                                    </div>
                                    <div class="about">{$vo['remark']}</div>
                                </div>
                                {/case}
                                {case 1}<div class="layui-col-xs6 item">
                                <div class="title-item">{$vo['conf_explain']}</div>
                                <div class="item-center">
                                    <div class="layui-input-block">
                                        <input type="checkbox" checked="" name="{$vo['conf_name']}" value="1" lay-skin="switch" title="开关">

                                    </div>
                                    <button class="layui-btn" type="button" οnclick="save('{$vo['conf_name']}',{$vo['view_type']})">保存</button>
                                </div>
                                <div class="about">{$vo['remark']}</div>
                            </div>{/case}
                                {case 2}
                                <div class="wechat layui-col-xs12">
                                    <div class="menu-title">{$vo['conf_explain']}</div>
                                    <div class="layui-input-block">
                                        <textarea placeholder="" class="layui-textarea" name="{$vo['conf_name']}">{$vo['conf_value']}</textarea>
                                    </div>
                                    <p class="about">
                                        {$vo['remark']}
                                    </p>
                                    <div class="we-btn"> <button class="layui-btn" type="button" οnclick="save('{$vo['conf_name']}',{$vo['view_type']})">保存</button>
                                    </div>
                                </div>
                                {/case}
                                {default /}
                                {/switch}
                                {/volist}
                            </div>


                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
{/block}
{block name="script-content"}
    <script>

        function save(conf_name,type){
            switch (type)
            {
                case 0:
                    var conf_value = $('input[name='+conf_name+']').val();
                    break;
                case 1:
                    var conf_value = $('input[name='+conf_name+']').is(':checked') ^ 0;
                    break;
                case 2:
                    var conf_value = $('textarea[name='+conf_name+']').val();
                    break;
            }
           if (!conf_value && type != 1)
               alert('不能为空');
            var data = {conf_name:conf_name,conf_value:conf_value};
            console.log(data);
            var url = "/a_delete_reward_good";
            $.post(
                url,
                data,
                function (result) {
                    if (result.error == 0) {
                        layer.msg(result.message, { icon: 1 });
                    } else {
                        layer.msg(result.message);
                    }
                }, "JSON");

        }
    </script>
{/block}
获取单选框选中的值
var pay_method = $('input[name="pay_method"]:checked').val();
发布了85 篇原创文章 · 获赞 45 · 访问量 95万+

猜你喜欢

转载自blog.csdn.net/flysnownet/article/details/100888814