如何检查用户是否更改了表单

时间:2013-01-07 13:33:08

标签: c# asp.net textbox

我正在使用Asp.Net和C#,在用户应填写的不同.aspx文件中使用多种表单。

用户保存表单后,应保持填写状态,以便用户有机会根据需要进行一些更改。

我想允许用户通过单击“保存”按钮进行更改,但如果已保存案例(表单),我想在数据库中的相同案例中覆盖它们。

但是,检查用户是否进行这些更改的最佳方法是什么?

  1. 我应该将当前值与数据库中存储的值进行比较吗?
  2. 我应该考虑每个文本框的TextChanged操作吗?
  3. 任何建议都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

将您拥有的数据与数据库数据进行比较是一种方法。

另一种方法是使用属性How to: Set HTML Attributes for Controls in ASP.NET Web Pages

所以在你的代码中你会做类似的事情:

myTextBox.Text = "ABC";
myTextBox.Attributes.Add("myTextBoxOriginalText", myTextBox.Text);

现在,当您从客户端获取数据时,您可以使用新值检查属性值

if (myTextBox.Attributes["myTextBoxOriginalText"] != myTextBox.Text)
{
  // Do some work
}

使用属性,您可以使用JavaScript检查客户端的更改,因为您有原始值和新值,并在有一些更改时向服务器发送其他标志。