在ASP.NET中的ServerSide之前执行ClientSide

时间:2010-08-05 13:39:10

标签: c# javascript asp.net vb.net code-behind

我正在使用ASP.NET 3.5。

当用户点击说btnSubmit时,我想首先执行一些JavaScript代码,然后执行一些C#/ VB.NET代码。

这可能吗?如果是这样,怎么会这样做?

提前致谢!

5 个答案:

答案 0 :(得分:1)

这很简单:

http://msdn.microsoft.com/en-us/library/7ytf5t7k.aspx

<%@ Page Language="C#" %>
<script runat="server">
    protected void Button1_Click(Object sender, EventArgs e)
    {
        Label1.Text = "Server click handler called.";
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
  <form id="form1" runat="server">
    <asp:Button ID="Button1" Runat="server" 
      OnClick="Button1_Click" 
        OnClientClick="return confirm('Ready to submit.');" 
        Text="Test Client Click" />
    <br />
    <asp:Label ID="Label1" Runat="server" text="" />
  </form>
</body>
</html>

答案 1 :(得分:0)

让JavaScript执行,然后使用javascript

中的xmlhttprequest调用Web服务

答案 2 :(得分:0)

答案 3 :(得分:0)

当然,您只需添加一个onClick事件,在回发之前执行所有JS代码。

如果代码是用于验证而您决定不想提交,则可以返回false并且不会发布。

<asp:Button OnClientClick="" />

答案 4 :(得分:0)

谢谢你的回答!

要从代码后面执行函数,可以在VB.NET中执行此操作

 Protected Sub btnSubmit_Click(blah blah) Handles btnSubmit.Click

    ClientScript.RegisterStartupScript(Me.GetType(), "hiya", "Message()", True)
    lblLabel.Text = "Hello my name is Etienne!"

End Sub