避免在Web表单中隐藏字段

时间:2011-12-29 17:29:16

标签: asp.net

我有一个网页和一个模态对话框页面。单击show modal对话框中的save按钮。关闭窗口并返回一个值。现在的时候了 control到达父窗口的JavaScript函数。我想根据这个返回的ID执行一些数据库操作。

我使用以下方法来利用此返回值。

  1. 将其保存在隐藏字段中,并在隐藏控件中填充返回的值。
  2. 在父窗口中保留隐藏按钮,当控件返回到父页面的JavaScript函数时执行click事件。因此,在服务器端按钮处理程序从隐藏字段中获取值,并根据返回值执行数据库操作。
  3. 这种方法很好吗?或者我可以摆脱隐藏的领域

2 个答案:

答案 0 :(得分:1)

您可能正在寻找的内容称为AJAX。使用AJAX,您可以直接在JavaScript代码中与Web服务器进行通信。那么不需要HTML表单帖子。您可能希望查看JQuery之类的框架。这些具有通过AJAX发送HTTP请求的简单实现(跨浏览器包装器)。

注意:我刚注意到,您正在使用ASP.NET。看看ASP.Net AJAX Page Methods

答案 1 :(得分:1)

如果返回的ID不是某人可以用来修改不属于他的记录的敏感信息,那就不是很糟糕了。可以在客户端完美地操作此ID以获取任何其他ID,并使您的逻辑更新与您的预期不同。

如果您要做的就是调用传递此ID的服务器端方法;为什么不从pop-window本身进行整个更新(此时你已经知道了ID)?

如果要更新父窗口(页面);您只需执行页面的正常刷新(即使用window.location将用户重定向到同一页面,以便他可以看到更新或使用Response.Redirect到同一页面。)