在表单提交之前运行脚本,ASP.NET

时间:2009-07-14 21:10:36

标签: asp.net html form-submit

我有一个带有cs脚本文件的ASP.NET页面,用于获取数据,然后将其发布到另一个站点。

在网站上我使用常规HTML表单,其中包含asp:TextBox和asp:HiddenField值来收集/保存数据。我遇到的问题是,在将它们发布到不同的站点之前,必须对其中的一些关键数据进行散列和腌制。

我有一个方法可以做到这一点,它工作正常,但它附加到提交按钮的OnClick属性,它是一个asp:Button目前有一个postbackurl集。这显然意味着当它进入新页面时会被跳过,这不是我想要的。

我仍然是网络开发的新手,所以有没有办法在提交页面之前运行方法,或者每次影响哈希的字段都会改变时我是否必须运行该方法?

2 个答案:

答案 0 :(得分:1)

如果您使用javascript编写的哈希方法,并且您在按钮的onclick 客户端事件上调用它。它应该在您的表单发布之前运行。使用form的onsubmit事件可能是另一种选择。

但如果您正在讨论设置隐藏控件值的服务器端散列函数,则应在散列方法后使用Server.Transfer。因为具有PostBackUrl属性的按钮不会回发页面本身。

答案 1 :(得分:0)

您可能希望查看Page.ClientScript.RegisterOnSubmitStatement

这将是一种在表单提交时执行某些javascript的方法。