ExtJs from和Ajax提交

// 方式1:加載編輯數據
	loadData : function(id) {
		var className = portal.menu.EditPanel;
		// 清空原有的信息
		className.fromPanel.getForm().reset();
		// 查詢加載數據
		className.fromPanel.getForm().load({
			url : 'menu/findById',
			method : 'POST',
			params : {
				id : id // 提交的數據參數
			},
			waitTile : '提示',
			waitMsg : '正在向服務器提交數據',
			success : function(form, action) {
				// action.result.msg
			}
		});
	},
  1. params:  傳遞參數到後臺服務器ajax

  2. success: 成功後調用的方法,這裏能夠使用action.result.name,快速獲取內容,而不用去解析json。json

  3. 此方法對於查詢詳細信息的時候,很是簡單。服務器

// 方式2:建立Form手動回填數據,暫不使用,(我的感受比較麻煩) Ajax方式url

initFormData : function(id) {
		var className = portal.menu.EditPanel;
		Ext.Ajax.request({
			url : 'menu/findById',
			params : {
				id : id
			},
			success : function(response) {
				// 解析服務器端返回的json字符串
				var jsonObj = Ext.util.JSON.decode(response.responseText);
				className.menuName.setValue(jsonObj.menu.menuName);
				className.parentId.setValue(jsonObj.menu.parentId);
				className.combo.setValue(jsonObj.menu.r_Type);
			},
			failure : function(options, response) {
				Ext.Msg.alert("錯誤", "查詢失敗!");
			}
		});
	},
  1. Ext.Ajax.request() 這裏使用的是ajax提交方式,code

  2. params:封裝的參數和form.load()方法同樣。orm

  3. success: 須要經過
    字符串

  4. var jsonObj = Ext.util.JSON.decode(response.responseText);

    方式解析服務器返回的json數據。get

  5. failure:查詢失敗的方法。
    it

// 方式3:form提交數據io

// form提交數據
			className.fromPanel.getForm().submit(
					{
						url : 'menu/saveMenu',
						method : 'POST',
						waitTitle : "提示",
						waitMsg : '正在提交數據...',
						success : function(form, action) {
							// 服務器端返回的是字符串須要封裝爲jsonObject
							// var result =
							// Ext.util.JSON.decode(action.response.responseText);
					                    alert("保存成功!");
							// 關閉新增頁面
							className.editPanel.close();
							// 從新加載列表數據
							qryClass.loadData();
							// 刷新樹,獲取根節點reload
							// treeClass.wPanel.getRootNode().reload();
							// 刷新菜單樹
							treeClass.wPanel.getSelectionModel()
									.getSelectedNode().reload();
							
						},
						failure : function(form, action) {
							// alert("保存失敗");
						}
					});

1.form提交後,服務器返回的消息也須要json解析。

相關文章
相關標籤/搜索