【问题标题】:How to save form record in client side while saving data with ajax POST?如何在使用ajax POST保存数据的同时在客户端保存表单记录?
【发布时间】:2013-12-07 09:40:57
【问题描述】:

我创建了一个表单。 单击提交按钮时,记录正在使用 ajax POST 保存在数据库中。

然后再次查看网页上的这些记录,我正在清除现有的 html 并添加新记录。

在表单中,我有选择列表、文本框和文本区域。

例如:

以下是我的表单:

单击保存常见问题解答按钮后,来自以下表单数据的数据将保存在数据库中。

问题编号字段具有唯一编号。为此,我在后端生成数字。 意味着当我做 ajax POST Question No 是空白的,但它被分配了唯一的编号。在放入数据库之前。

要求

存在选择列表,默认选项值为 Default Mode(New)

问题字段值需要在点击保存FAQ后追加到选择列表中。 为此,我使用 Ajax GET 获取所有记录并清除以前的 html 并添加新数据,但这是不可行的。

我需要对此进行优化。

为此,我需要将此记录保存在数组中,例如:

saveFaqRecordT = []
saveFaqRecordT.push({faq_no: getRec, faq_quest: rec.faq_quest, faq_answer: rec.faq_answer});    

getRec 是计数器,因为我们没有从客户端传递任何 Question No 值。

或者请指导我如何在保存 Ajax POST 的同时在客户端保存记录,这样每次保存时都不需要进行 Ajax Get?

【问题讨论】:

    标签: javascript python jquery-ui jquery


    【解决方案1】:

    Ajax Post -> 返回适当的响应,比如 JSON

    成功

    {"status":"success","message":"added successfully"}
    

    出现错误

    {"status":"error","message":"failed because of validation"}
    

    只需在 POST 回调中解析此 JSON,即可确定保存成功与否。

    如果保存成功,只需将数据添加到您的saveFaqRecordT 数组即可。

    $.ajax({
       method:POST,
       url:"http://someurl.com",
       data:$("#myform").serialize(),
       success:function(data){
          var json=eval(data);
          if(json.status=='success'){
               //append to array
          }   
       }
    });
    

    以上只是一个未经测试的示例代码,让您了解如何完成它。

    【讨论】:

      猜你喜欢
      • 2023-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-02
      • 1970-01-01
      相关资源
      最近更新 更多