轉自:https://blog.csdn.net/lenovouser/article/details/52514906
今日(2014-07-23 10:18:01)開始學習EasyUI
1,ajax提交只是簡單的異步和文本提交。提交的數據需要序列化或程序指定。同時,數據也需要自己驗證。如果使用easyui的驗證組件validatebox,則需要在提交前調用,如下:
if ($("#formname").form("validate")){
$.ajax(......)
}
2,easyui的form提交也可以實現無刷新提交,而且可以提交file。但是easyui的form提交是通過ifram實現的,定位在屏幕的 -1000,-1000位置,變相不顯示,提交的數據也不需要程序指定和序列化。通過此方式傳遞的數據是不能被firebug捕捉到的。form提交自動 調用validaebox組件驗證提交。
3,ajax可以指定dateType:‘json’,但form提交需要對返回的數據進行JSON轉換,調用$.parseJSON().
jQuery EasyUI里表單(Form)的用法和jQuery里AJAX的用法差不多。這些參數的用法:
參數名 | 類型 | 描述 | 默認值 |
---|---|---|---|
url | 字符串 | 表單提交的地址 | null |
事件名 | 參數 | 描述 |
---|---|---|
onSubmit | none | 提交之前觸發的事件,如果返回false可以防止提交 |
success | data | 表單提交成功的時候觸發 |
方法名 | 參數 | 描述 |
---|---|---|
submit | options | 執行提交的操作,選項的參數是一個對象,這個對象包括以下的屬性: url:設置提交的地址; onSubmit:提交之前的回調函數 submit:提交成功后的回調函數 |
load | data | 加載記錄來填充表單 選項參數可以是一個字符串或者是一個對象,字符串意味着是一個遠程地址,否則就是一個本地的數據記錄 |
clear | none | 清空表單數據 |
validate | none | 表單字段的驗證,如果返回true,則說明所有的字段都是合法的。這個方法可以和validatebox插件聯合使用 |
只需在OnSubmit事件中使用Return$("#form1").form('validate');即可。該方法會自動對我們指定的required=true的驗證字段進行驗證,不通過時會返回false:
- $('#fm_line').form('submit', {
- url:'line!saveBgLine.do',
- onSubmit: function(){
- if($("#fm_line").form("validate"))
- return true
- else
- return false;
- },
- //注意ajax的url的后台action方法必須有返回值return "json",而不是return null,否則下面的回調函數不起作用,sucess方法失效
- success:function(data){
- //此處data={"Success":true}實際為字符串,而不是json對象,需要用如下代碼處理
- var obj = jQuery.parseJSON(data);
- if(obj.Success){
- $.messager.alert('消息','保存成功!');
- $('#tab_line').datagrid('reload');
- $("#fm_line").form("clear");
- top.location.href = "main/main.html"; //轉主頁面
- }else{
- $.messager.alert('消息','保存失敗!');
- }
- }
- });
2,使用easyUi
添加 jquery.js,easyui.js
添加本地支持easyui-lang-zh_CN.js
樣式表easyui.css和圖標icon.css
3,調試對象。
console.info($('#obj')); 不要使用alert