从后面的代码调用javascript与从javascript调用代码

时间:2010-03-08 16:21:14

标签: c# asp.net javascript

我有一个Web应用程序,需要访问方法背后的代码以及javascript方法。对于这个特定的实现,从程序流的角度来看,调用它们的顺序并不重要。

我正在寻找深入了解何时使用后面的代码来调用javascript以及什么时候从后面的代码调用javascript是合适的。在推进实施之前,我是否应该以某种方式做到这一点?

是否有最佳实践方法,或者它是否特定于实际实施?

2 个答案:

答案 0 :(得分:1)

让我们谈谈从JavaScript调用服务器端代码。这是通过使用Ajax执行的。您可以在Web服务中调用Web方法,如果使用特殊属性装饰它们,也可以调用页面方法。

从js调用服务器端的主要原因是使用ajax功能。

从服务器端调用js基本上就是当你将javascript代码注入到页面中,然后在某些操作上调用客户端代码。

更新:

可能还有一些其他原因需要从javascript调用服务器端,这可能包括使用document.form.submit()手动提交表单。但我会说,大部分时间90%+你调用服务器端代码来使用ajax异步执行一个动作。

对于第二种情况,一个常见示例可能是您想要在gridview控件中包含的按钮中添加确认框。在该场景中,您将在gridview控件的数据绑定事件中添加代码,并将javascript代码添加到gridview中包含的按钮。最后,当渲染gridview时,gridview中的按钮将附加javascript,当用户单击该按钮时,它会弹出确认框。另一种情况可能是您希望在回发发生后打开新的弹出窗口。

答案 1 :(得分:0)

你的意思是“服务器代码背后的代码”,对吧? JavaScript代码无法调用服务器代码。通常,您的服务器代码将输出JS变量,JS函数或在编译时无法确定的任何其他客户端代码。

编辑:为了澄清,JS代码肯定可以通过Ajax POST到服务器,这确实是“调用服务器代码”。我以为你问的是直接从JS调用代码隐藏函数,因为它们在Visual Studio中“在同一页面上”,除非你把这些函数公开为支持Ajax并使用一些客户端Ajax机制来调用它,否则这是不可能的。它们。

为了最好地回答您的问题,具体的用例会有所帮助。这样做没有一般的正确或错误的理由 - 取决于你想要完成的事情。