要實現表單驗證和無重新整理提交表單我們可以使用jQuery的兩個很好用的外掛程式——jquery validate.js 和 jquery form.js.具體詳細說明情況下文。
1、jQuery validate.js,它說白了就是一個很高尚的人為我們寫好了各種表單的驗證,不用我們這些童鞋去現寫了,一天天的多累啊,呵呵。
2、jQuery form.js,“這個外掛程式能夠讓你簡潔的將以HTML形式提交的表單升級成採用AJAX技術提交的表單。 外掛程式裡面主要的方法, ajaxForm 和 ajaxSubmit, 能夠從form組件裡採集資訊確定如何處理表單的提交過程。兩個方法都支援眾多的選擇性參數,能夠讓你對錶單裡資料的提交做到完全的控制。這讓採用AJAX方式提交一個表單的過程簡單的不能再簡單了! ”。
下面請看程式碼範例:
表單:
<form action="@Url.Action("AddColumns","Content")" method="post" id="AddColumnsForm"> <div class="form-group js-EditCol" id="AddName"> <label class="control-label">名稱</label> <input name="Name" class="form-control" required /> </div> <div class="form-group js-EditCol" id="AddRemark"> <label class="control-label">備忘</label> <input name="Remark" class="form-control" /> </div> <div class="form-group js-EditCol" id="AddColumnTypeId"> <label class="control-label">類型</label> <select class="form-control" name="ColumnTypeId" id="AddColumnTypeIdSel" required> </select>//下拉式清單空置驗證之要項目的Value值是空的就認為是空值 </div> <input type="submit" class="btn btn-primary" value="新增欄目" /> <input type="reset" class="btn btn-default" value="清空" /></form>
javascript:
$(document).ready(function () { $("#AddColumnsForm").validate({ submitHandler: function(form) { $(form).ajaxSubmit(); } });});
後面再加強一下
$(document).ready(function () { $("#AddColumnsForm").validate({ submitHandler: function(form) { $(form).ajaxSubmit({ success: function (result) { //表單提交後更新頁面顯示的資料 $('#TreeTable').treegrid('reload'); var d = result.split(';'); ShowMsg(d[0], d[1], d[2]); } }); } });});
然後在修改下錯誤資訊顯示位置,符合bootstrap樣式
$(document).ready(function () { $("#AddColumnsForm").validate({ errorPlacement: function (error, element) {//自訂錯誤資訊顯示操作,element是出錯的input控制項,error可以認為是是包含
錯誤資訊的label標籤
element.next('span.help-block').remove(); element.after('<span class="help-block">' + error.text() + '</span>'); element.parent().addClass("has-error"); },submitHandler: function(form) { $(form).ajaxSubmit({ success: function (result) { $('#TreeTable').treegrid('reload'); var d = result.split(';'); ShowMsg(d[0], d[1], d[2]); } }); } });
以上內容介紹了jquery.validate和jquery.form 外掛程式組合實現驗證表單後AJAX提交 ,本文寫的不好還請見諒,謝謝。