是否可以使用模型/商店的代理提交extjs 4表單。我想使用提交操作來進行遠程驗證。我想從模型中使用剩餘的代理配置,這樣我就可以避免兩次配置數據庫/服務器連接。ExtJS 4使用模型代理提交表單
Thx爲您的幫助!
是否可以使用模型/商店的代理提交extjs 4表單。我想使用提交操作來進行遠程驗證。我想從模型中使用剩餘的代理配置,這樣我就可以避免兩次配置數據庫/服務器連接。ExtJS 4使用模型代理提交表單
Thx爲您的幫助!
如果您的表單完全代表您的模型的一個實例,爲什麼使用表單提交而不是model.save();
或store.sync()
?這些方法設計用於處理數據模型,並充分利用ExtJS數據的所有內置功能。
在documentation for Ext.data.Model子標題下的「使用代理服務器」中,有可能需要執行的各種操作(GET,PUT,POST,DELETE - 又名加載,保存,保存,銷燬)的示例。
然後,您可以將一些回調附加到model.save()方法,以便知道操作是成功還是失敗(可能是由於服務器端驗證)。
這裏有一個煎茶論壇帖子談論你的具體使用情況:ExtJS 4 Sync and success/failure processing
的總結是,如果你的服務器端驗證使用JSON內容類似返回了一個錯誤:
{ "success": "false", "message": "Error message goes here." }
然後,你可以保存您的模型並捕獲失敗響應並使用額外的消息JSON元素來提醒用戶爲什麼服務器端驗證失敗。當然,如果你喜歡,你可以返回更詳細的JSON消息,但是這證明了這個概念。擴展套裝您的應用程序。
myExtModelInstance.save({
success: function(rec, op) {
// do something
},
failure: function(rec, op) {
// Lets show a message for the failure with the
// content from the server's returned failure JSON
Ext.Msg.alert("Failed",op.request.scope.reader.jsonData["message"]);
}
});