侯体宗的博客
  • 首页
  • Hyperf2.1版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

easyui点击人数自动生成一行表单时间

前端  /  管理员 发布于 4年前   443

功能效果:

E[X%4_N)GX5D9SU`8UC8`$2.png

代码:

 <form id="form" method="post" onsubmit="return submit();" style="margin:0;padding:5px 5px" data-options="novalidate:true">
    <div id="bookDiv" class="easyui-panel"  data-options="title:'预订信息',halign:'left',headerCls:'panel'" 
        style="height: 100px">
        <table border="0" cellspacing="0" style="border-color: #e6efff;margin: 10px;">
            <thead>
                <tr>
                    <th width="70">用户类型</th>
                    <th>采购价</th>
                    <th>利润</th>
                    <th>服务费</th>
                    <th>销售价</th>
                    <th>出行人数</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>
                        <input type="text" class="easyui-numberbox  price cosprice" id="adultcosprice" name="adultcosprice" style="width:100px;" data-options="precision:2">
                    </td>
                    <td>
                        <input type="text" class="easyui-numberbox price" name="" style="width:100px;">
                    </td>
                    <td>
                        <input type="text" class="easyui-numberbox price" name="adultcharge" style="width:100px;" data-options="precision:2">
                    </td>
                    <td>
                        <input type="text" class="easyui-numberbox price insurprice" name="" style="width:100px;" data-options="editable:false,precision:2">
                    </td>
                    <td>
                        <input type="text" class="easyui-numberbox sumprice" id="adultprice" name="adultprice" style="width:100px;" data-options="editable:false,precision:2">
                    </td>
                    <td>
                        <input type="text" class="easyui-numberspinner number" id="ss" name="adultnumber" style="width:100px;" data-options="editable:false,min:1,value:1">
                    </td>
                </tr>
            </tbody>
        </table>
    </div>

    <div id="passenagersDiv" class="easyui-panel"  data-options="title:'出行人信息',halign:'left',
        headerCls:'panel'" style="height: 90px">
        <table style="border-color: #e6efff;margin: 10px;">
            <thead>
            <tr>
                <th>类型</th>
                <th>人员姓名</th>
                <th>证件类型</th>
                <th>证件信息</th>
                <th>联系电话</th>
            </tr>
            </thead>
            <tbody id="passengers">
            <tr>
                <td>
                    <input type="text" class="easyui-combobox" name="passenger[0][usertype]"
                           data-options="width:100,required:true,panelHeight:'auto',editable:false,required:true,valueField: 'key',textField: 'value'">
                </td>
                <td>
                    <input type="text" class="easyui-textbox" name="passenger[0][username]"
                           data-options="width:100,required:true"></td>
                <td>
                    <input type="text" class="easyui-combobox" name="passenger[0][idtype]"
                           data-options="width:100,required:true,panelHeight:'auto',editable:false,required:true,valueField: 'key',textField: 'value' ">
                </td>
                <td>
                    <input type="text" class="easyui-textbox" name="passenger[0][userno]"
                           data-options="width:150,required:true"></td>
                <td>
                    <input type="text" class="easyui-textbox" name="passenger[0][mobile]"
                           data-options="width:100,required:true,
                           validType:['mobile']">
                </td>
            </tr>
            </tbody>
        </table>
        </div>
        <input type="submit" value="Submit"></input>
</form>
<script type="text/javascript">
    //点击生成tr 及里面的td input
    $('#ss').numberspinner({    
        min: 1,    
        max: 10,    
        editable: false,
        onChange:function(newValue,oldValue) {
            setUser('passengers',newValue,oldValue)
        } 
    });   

    //动态添加出行人信息
    function setUser(tableId,newNum,oldNum)
    {
        oldNum = oldNum ? parseInt(oldNum) : 0;
        var len = $('#passengers tr').length;
        var key = parseInt(len - oldNum) + parseInt(newNum);
        var num = key;
        //console.log(oldNum)
        //根据人数生成 newNum行
        for(var i=len;i<newNum;i++)
        {
            //拼接表格
            $("#"+tableId).append('<tr>' +
                '<td><input type="text" class="easyui-textbox" name="passenger['+key+'][usertype]" data-options="panelHeight:'+"'auto'"+',editable:false,valueField: '+"'key'"+',textField: '+"'value'"+',data:[],required:true,width:100"/></td>' +
                '<td><input type="text" class="easyui-textbox" name="passenger['+key+'][username]" data-options="required:true,width:100"></td>' +
                '<td><input class="easyui-combobox cardtype" name="passenger['+key+'][idtype]"  data-options="panelHeight:'+"'auto'"+',editable:false,valueField: '+"'key'"+',textField: '+"'value'"+',data:[],required:true,width:100" /></td>' +
                '<td><input type="text" class="easyui-textbox" name="passenger['+key+'][userno]" data-options="required:true,width:150"></td>' +
                '<td><input type="text" class="easyui-textbox" name="passenger['+key+'][mobile]" data-options="width:100"></td></tr>'
            );
        }
        //渲染
        $.parser.parse($('#'+tableId));
        //根据人数自动减少newNum行
        $('#passengers tr:gt(' + (newNum - 1)+ ')').remove();
        $('#passenagersDiv').panel({height:64+26*num});
    }

    //保存
    function submit() {
        $.ajax({
            type: 'POST',
            url: '/welcome/test',
            data: $('#form').serialize(),
            dataType: "json",
            beforeSend: function (xhr) {
                if ($('#form').form('validate')) {
                    $.messager.progress();
                    return true;
                }
                $('#form').find(".validatebox-invalid:first").focus();
                return false;
            },
            success: function (res) {
                $.messager.progress('close');
                if (res.status == 200) {
                    $("#form").parent().dialog("close");
                    $.messager.alert('操作提示', res.msg, 'info');
                    return true;
                }
                $.messager.alert('操作提示', res.msg, 'error');
            }
        });
        return false;
    }
</script>

实现效果图:

_~2O49LO9G~SV0}BOFAYDY0.pngD8S5`AWV5T]1)4(%%UL8TKY.png

生成提交的数据:

IL0E_2`BVE1TOW7]1RF6D28.png




  • 上一条:
    多数组元素求个数及重组功能
    下一条:
    easyui 按年,按年月,按年月日显示提交后台
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • TP(3/5)
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • uni-app在详情页中给电话信息添加点击拨打电话的功能按钮(0个评论)
    • uni-app开发小程序搜索功能及添加搜索历史记录、添加热门搜索关键词功能demo(0个评论)
    • uni-app开发小程序使用uni.getLocation()实现页面即时获取当前定位信息demo(1个评论)
    • uni-app开发小程序实现列表页条件筛选显示功能demo(0个评论)
    • vue+elementui实现百度地图api滑上列表显示位置信息(0个评论)
    • 近期文章
    • Laravel 9.13版本发布(0个评论)
    • beego+GeoLite2免费数据库获取ip地址经纬度等定位归属信息(0个评论)
    • redis安全配置之修改端口、添加密码流程步骤及启动使用(0个评论)
    • PHP + Memcache实现简单的统计当前在线人数功能(0个评论)
    • Thinkphp5.1框架中实现Session+Redis会话共享流程步骤(0个评论)
    • go语言中使用Signbit()函数判断一个整数是正数或负数(0个评论)
    • 删库跑路之一链家程序员删除公司9TB数据被判7年,望各大码农警之!(0个评论)
    • Laravel角色和权限:拦截器Gates和策略Policies的解释(0个评论)
    • Laravel 9.12版本发布(0个评论)
    • go语言中实现把数据写入文件函数WriteFile()编写(0个评论)
    • 近期评论
    • 博主 在

      hyperf框架常用命令-在centos7中退出命令及在docker容器中退出命令中评论 @路过的靓仔:cdn静态资源被墙,已修复..
    • GGGGGGGGG 在

      layui框架常用输入框介绍中评论 写的很好解决问题..
    • 路过的靓仔 在

      hyperf框架常用命令-在centos7中退出命令及在docker容器中退出命令中评论 剩下好多 wait 状态的..
    • 激光豆芽 在

      为什么你不能安逸?国内996为什么没有国外955香?中评论 国内现在无意义的内卷太多了..
    • 激光豆芽 在

      阿里云香港服务器搭建自用vpn:Shadowsocks使用流程步骤中评论 厉害了..
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-10
    • 2017-11
    • 2018-03
    • 2018-04
    • 2018-05
    • 2018-06
    • 2018-09
    • 2018-11
    • 2018-12
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-04
    • 2021-05
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客