只需单击一下,即可调用javascript和c#方法

只需单击一下,即可调用javascript和c#方法,javascript,asp.net,button,Javascript,Asp.net,Button,我有一个javascript中的方法和一个c#中的方法,现在只要点击一个按钮,我就想把它们都称为 首先,我想调用名为'Find#u Direction'的c#方法,因为它在单击时会进入输入,然后我将在名为calcRoute的javascript方法之后调用 我试过这个,但运气不好: <asp:Button id="Button1" UseSubmitBehavior="False" value="GetDirections" onclick="calcRoute" OnClientClic

我有一个javascript中的方法和一个c#中的方法,现在只要点击一个按钮,我就想把它们都称为

首先,我想调用名为
'Find#u Direction'
的c#方法,因为它在单击时会进入输入,然后我将在名为
calcRoute
的javascript方法之后调用

我试过这个,但运气不好:

<asp:Button id="Button1" UseSubmitBehavior="False" value="GetDirections" onclick="calcRoute" OnClientClick="Find_Direction" runat="server"/>

您正在onClick事件中指定javascript函数名。所以把C#函数名放在这里

C#代码:

你的标记

 <asp:Button id="Button1" value="GetDirections" onclick="Find_Direction " OnClientClick="return Find_Direction()" runat="server"/>

这样,您就可以调用javascript函数,然后再调用服务器端函数,但要确保调用服务器端函数的javascript函数返回true


我希望,现在你能解决你的问题。:)

您正在onClick事件中指定javascript函数名。所以把C#函数名放在这里

C#代码:

你的标记

 <asp:Button id="Button1" value="GetDirections" onclick="Find_Direction " OnClientClick="return Find_Direction()" runat="server"/>

这样,您就可以调用javascript函数,然后再调用服务器端函数,但要确保调用服务器端函数的javascript函数返回true


我希望,现在你能解决你的问题。:)

在代码隐藏(aspx.cs或aspx.vb文件)中需要一个名为
calcRoute
的事件处理程序

如果您希望先执行JS,那么应该能够按照您的方式执行,使用OnClientClick(指向JS函数)和OnClick(指向C#/VB方法(事件处理程序)


如果您想确保在C#代码之后调用JS,您应该处理后端上的单击,然后通过注册启动脚本将JS发送回浏览器。除非您使用的是更新面板,否则这将导致完整的回发。在事件处理程序中,可以使用
Page.RegisterStartupScript
注册启动脚本,以将javascript命令发送回浏览器。在这种情况下,您根本不想使用OnClientClick。

您的代码隐藏(aspx.cs或aspx.vb文件)中需要一个名为
calcRoute
的事件处理程序

如果您希望先执行JS,那么应该能够按照您的方式执行,使用OnClientClick(指向JS函数)和OnClick(指向C#/VB方法(事件处理程序)


如果您想确保在C#代码之后调用JS,您应该处理后端上的单击,然后通过注册启动脚本将JS发送回浏览器。除非您使用的是更新面板,否则这将导致完整的回发。在事件处理程序中,可以使用
Page.RegisterStartupScript
注册启动脚本,以将javascript命令发送回浏览器。在这种情况下,您根本不想使用OnClientClick。

但首先处理哪个?calcRoute或Find_Direction方法。我想先在Find_方向进行处理@亚当·普洛切罗对不起,我以为你想换个方式。OnClientClick应该在回发/事件处理程序之前执行。但是哪个将首先处理?calcRoute或Find_Direction方法。我想先在Find_方向进行处理@亚当·普洛切罗对不起,我以为你想换个方式。OnClientClick应该在回发/事件处理程序之前执行。这样会首先执行find\u direction方法吗@萨奇诺。我以为你想在calcRoute之后找到执行的方向。但是,如果您希望首先执行find\u Direction,而不只是在客户端单击调用它,就像
OnClientClick=“return find\u Direction”
。我仍然在努力解决这个问题。因为它似乎不在javscript方法中@SachinOnclick它将使用Find_Direction方法,但不会使用javascriptone@IT_info我已经编辑了我的答案,使用案例2,您可以先调用
Find_Direction
,然后再调用
calcRoute
。我从标记中删除了
UseSubmitBehavior=“False”
。请看一看。这样会首先执行find\u direction方法吗@萨奇诺。我以为你想在calcRoute之后找到执行的方向。但是,如果您希望首先执行find\u Direction,而不只是在客户端单击调用它,就像
OnClientClick=“return find\u Direction”
。我仍然在努力解决这个问题。因为它似乎不在javscript方法中@SachinOnclick它将使用Find_Direction方法,但不会使用javascriptone@IT_info我已经编辑了我的答案,使用案例2,您可以先调用
Find_Direction
,然后再调用
calcRoute
。我从标记中删除了
UseSubmitBehavior=“False”
。请看一看。
<asp:Button id="Button1" value="GetDirections" onclick="Find_Direction" runat="server"/>
 function calcRoute() {

        alert('test')
        return true;
    }
 <asp:Button id="Button1" value="GetDirections" onclick="Find_Direction " OnClientClick="return Find_Direction()" runat="server"/>