3

我正在开发用户可以创建博客文章并且博客文章每隔一段时间定期更新的应用程序。我找到了一个用于处理自动保存的jQuery 自动保存插件,但我仍然遇到问题。

  1. 当我使用 firebug 进行调试时,我只看到 GET 请求,因此页面不会更新,我不确定如何在 GET 请求之后调用 POST。

  2. 它不会在我键入时或每 3 秒更新一次,但在我单击表单字段外部时会更新。无论如何要让它每3秒左右更新一次?

我的代码在下面列出

应用程序.js

    jQuery(function($) {
      $("#main-form").autosave({
        callbacks: {
          trigger: ["change", function() {
            var self = this;

            $("[name=save]").click(function() {
              self.save();
            });
          }],
          save: {
            method: "ajax",
            options: {
              success: function() {
                alert("saved!");
              }
            }
          }
        }
      });
    });

post_controller.rb

def update
  @post = Post.find(params[:id])

  respond_to do |format|
    if @post.update_attributes(params[:post])
      format.html { redirect_to semester_post_path, notice: 'post was successfully updated.' }
      format.json { head :ok }
    else
      format.html { render action: "edit" }
      format.json { render json: @post.errors, status: :unprocessable_entity }
    end
  end
end
4

1 回答 1

2

我相信你已经继续前进,但只是为了缩小这篇文章的差距。OnChange 发生在字段失去焦点时,因此您所看到的似乎按设计正常运行。

这是使用超时自动保存的问题/答案的链接 AJAX

自动保存意见:

在文档正式提交之前,我不确定你是否真的想要启用自动保存,但我会发布我最喜欢的 2。

  1. 有些表单往往有很多用于后端存储的移动部件,并且在将一堆数据填充到表中之前应该是有意的。(恕我直言)

  2. 在第一次“真正”提交之前让他们单独(不是自动保存)的另一个理由是,在他们点击提交之前,他们可能并不真正希望您在系统中拥有该信息。

您有多少次在网上开始填写表格,然后决定不想填写该信息?...从我实际上决定退出注册的网站获得传单、电子邮件或电话会让我感到沮丧!

于 2013-05-01T22:31:15.047 回答