采用的結構:
<form class="layui-form reset-form" action="" id="formData"> @* 使用隱藏域用於保存編輯項的ID值,便於提交修改 *@ <input type="hidden" name="ID" /> <div style="color:red;text-align:center;margin-bottom:5px;">注:所填數量不應含省平台轉辦的信息數量,應僅為本地區自主受理的數量</div> <div class="layui-form-item"> <label class="layui-form-label">日期</label> <div class="layui-input-inline"> <input name="GetTime" id="date" placeholder="請選擇日期范圍" autocomplete="off" class="layui-input" type="text"> <span class="red required">*</span> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">設區市</label> <div class="layui-input-inline"> <select name="CityID" lay-verify="required" lay-search="" lay-filter="selectChange"></select> <span class="red required">*</span> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">行政區</label> <div class="layui-input-inline"> <select name="RegionID" lay-verify="required" lay-search=""></select> <span class="red required">*</span> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">咨詢建議當日受理量(個)</label> <div class="layui-input-inline"> <input name="AmountConsultation" lay-verify="required" autocomplete="off" class="layui-input" type="text" id="DepartmentName" value=""> <span class="red required">*</span> </div> </div> </form>
提交時:
參數打包 $('#formData').serialize() 但是發現少了 ‘設區市’ 和 ’行政區’
另外:
.serialize() 方法 通過序列化表單值,創建 URL 編碼文本字符串
1 form.on('submit(save)', function () { 2 $('#date').removeAttr('disabled'); 5 //判斷提交路徑 6 if (pageType == "add") { 7 saveUrl = "/ComplaintsSummary/AddComplaintsSummary" 8 } else { 9 saveUrl = "/ComplaintsSummary/UpdateComplaintsSummary"; 10 } 11 $.ajax({ 12 url: saveUrl, 13 type: "post", 14 data: $('#formData').serialize(), 15 success: function (res) { 16 if (res.IsSuccess) { 17 layer.msg(res.Message, { icon: 1, time: 1000 }, function () { 18 parent.layer.closeAll() 19 parent.DepartTable.reload() 20 21 }); 22 23 } else { 24 layer.msg(res.Message, { icon: 2, time: 1500 }) 25 } 26 $('#date').attr('disabled', 'true');29 }, 30 error: function () { 31 $('#date').attr('disabled', 'true');
34 } 35 }) 36 })
查找原因后發現是因為在修改時因為需求 ‘行政區’和’設區市’
因為不能修改所以設成了禁用狀態,但是這樣我們在提交時也拿不到了
$('[name=CityID]').attr('disabled', 'true');
$('[name=RegionID]').attr('disabled', 'true');
那么我們在提交時就要在接口之前解除禁用狀態
$('[name=CityID]').removeAttr('disabled');
$('[name=RegionID]').removeAttr('disabled');
或者
$('[name=CityID]').prop("disabled",false) $('[name=RegionID]').prop("disabled",false)