Javascript 如何实施;“自动保存”;或;“保存草稿”;ASP.NET中的功能?

Javascript 如何实施;“自动保存”;或;“保存草稿”;ASP.NET中的功能?,javascript,jquery,asp.net-2.0,Javascript,Jquery,Asp.net 2.0,我在ASP.NET 2.0中有一份注册表。我想通过点击提交按钮保存我的注册表字段,或者每五秒钟保存一次 例如,我的注册页面中有三个字段: UID PWD Name 用户已输入了UID和PWD,当用户输入Name时,应在不中断用户输入的情况下保存以前的值 在ASP.NET中如何实现这一点?您可以使用一段Javascript和jQuery来实现这一点。有一个由计时器触发的函数,该计时器定期读取要保存的表单数据,并将其发回SaveDraft.aspx页面。在此页面中,数据将保存在某个位置(如数据库)

我在ASP.NET 2.0中有一份注册表。我想通过点击提交按钮保存我的注册表字段,或者每五秒钟保存一次

例如,我的注册页面中有三个字段:

UID
PWD
Name

用户已输入了
UID
PWD
,当用户输入
Name
时,应在不中断用户输入的情况下保存以前的值


在ASP.NET中如何实现这一点?

您可以使用一段Javascript和jQuery来实现这一点。有一个由计时器触发的函数,该计时器定期读取要保存的表单数据,并将其发回
SaveDraft.aspx
页面。在此页面中,数据将保存在某个位置(如数据库)

如果用户注销或会话丢失,您可以查询此数据,并在数据存在时预填充表单

在数据输入ASPX页面上:

// Usual ASP.NET page directives go here

<html xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js" ></script>
  </head>
  <body>
    <form id="form1" runat="server">
      <div>
        <asp:textbox id="username" runat="server" /><br />
        <asp:textbox id="password" runat="server" /><br />
        <asp:textbox id="realName" runat="server" /><br />
        <asp:button id="Submit" onclick="Submit_Click" 
              usesubmitbehavior="true" runat="server" />
      </div>
    </form>

    <script type="text/javascript">
      $(document).ready(function () {
        // Configure to save every 5 seconds
        window.setInterval(saveDraft, 5000);
      });

      // The magic happens here...
      function saveDraft() {
        $.ajax({
          type: "POST",
          url: "SaveDraft.aspx",
          data: ({
            username: $("#<%=username.ClientID %>").val(),
            password: $("#<%=password.ClientID %>").val(),
            realName: $("#<%=realName.ClientID %>").val()
          }),
          success: function (response) {
            alert('saved draft');
          }
        });
      }
    </script>
  </body>
</html>

这应该可以让你开始了。

你也可以发布函数和计时器调用吗?我明白你的意思了。但是我不知道怎么做?因此,如果你发布源代码,这对我来说很容易。什么是响应的等价物;在Vb.net中?@Dogahe
Response.Form(“用户名”)
-Vb使用括号(圆括号)而不是方括号。@Kev当我做Response.Form(“用户名”)时,我得到错误:“Form”不是“System.Web.HttpResponse”的成员
public partial class SaveDraft : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
    string username = Request.Form["username"];
    string password = Request.Form["password"];
    string realName = Request.Form["realName"];

    // Save data somewhere at this point    
  }
}