2013-03-11 38 views
0

我有一个包含大约30种表单的表单模板。每次只选择一份表格并提交。表格中元素的数量有所不同,但大约有80或甚至更多。extjs表单提交模型设计

我对这个2个要求:

  1. 的形式提交应能高速缓存到localStorage的和resumit到服务器后,当网络恢复。我如何执行这些表单?
  2. 我不想将模型放在extjs中,因为模型将在真正的后端构建。后端将基于用户选择和输入的组合来构建它。不知道这是否有意义。我能想到的唯一的事情是通过一些规则设置inputId并在后端进行映射。

有什么建议吗?

回答

0

您可以在提交之前将基础表单数据推送到本地对象(数组?)中,并使用$ .ajax(...,data:myDataObject)将数据提交到后端而不是表单?这样你就可以将数据缓存,重新填充表单,或者根据响应重新提交。

我还没有使用的ExtJS(看起来不错,虽然),但我想是这样的:

function submitter() { 
    var myData = new Object(); //maybe make an array/object to store each form dataset separately? 
    //pseudo: 
    for each form element { 
     myData.push(item = value); 
    } 
    $.ajax({ 
     'dataType': 'json', 
     'type': 'GET', 
     'url': sSource, 
     'data': myData, 
     'success': [fnCallback, fnMy2ndCallback] //single or array of callbacks. 
    }); 
    function fnCallback(response) { 
     //check for failure, or success and proceed accordingly. 
    } 

唐 有一个伟大的日子

+0

你有一些例子吗? – user650749 2013-03-11 01:04:18

+0

我最终使用form.getValues()来检索所有脏字段并存储它们。 – user650749 2013-03-13 02:42:51

+0

很高兴我能帮上忙。和form.getValues()来通过值并保存它们听起来不错。你是否分别存储每个表单? – IsDonIsGood 2013-03-15 08:46:38