easyui点击人数自动生成一行表单时间
前端  /  管理员 发布于 6年前   681
功能效果:
代码:
<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>
实现效果图:
生成提交的数据:
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号