C# 从JavaScript方法执行ASP.net方法
我有一个javascript方法,如下所示 JS方法(JS_第1段、JS_第2段) { ...... ,,,,, } 我有一个像这样的ASP.NET方法 ASP_网法(ASP_段1、ASP_段2) { .... ,,, }C# 从JavaScript方法执行ASP.net方法,c#,asp.net,javascript,C#,Asp.net,Javascript,我有一个javascript方法,如下所示 JS方法(JS_第1段、JS_第2段) { ...... ,,,,, } 我有一个像这样的ASP.NET方法 ASP_网法(ASP_段1、ASP_段2) { .... ,,, } 现在我想从我的JSMethod调用这个ASP_Net_方法,方法是在那里传递一些参数。您真正想做的是从javascript执行服务器端代码(有时称为“代码隐藏”,这是我在谷歌搜索时使用的术语) 这篇文章展示了几个选项。好的是往底部走 基本上,触发服务器端事件的每个函数都使用一
现在我想从我的JSMethod调用这个ASP_Net_方法,方法是在那里传递一些参数。您真正想做的是从javascript执行服务器端代码(有时称为“代码隐藏”,这是我在谷歌搜索时使用的术语) 这篇文章展示了几个选项。好的是往底部走
基本上,触发服务器端事件的每个函数都使用一个名为uu doPostBack的javascript方法以及您想要执行的操作。需要明确的是:
- javascript由用户笔记本电脑上的用户浏览器执行
- ASP.NET方法在服务器上执行
编辑:您还可以查看。主页上有很多教程和视频。Ajax的PageMethods非常有用,如果您不想进行完整的回发,只需要调用1个方法 首先,我在aspx.cs文件中装饰了一个方法,如下所示:
[System.Web.Services.WebMethod]
public static string getVersions(string filePath)
{ ...
return myString;
}
请注意“静态”也。然后在javascript中,我可以这样称呼它:
PageMethods.getVersions(_hfFilePath.value, LoadVersionsCallback);
您可以根据不同数据类型的需要使用任意多的参数。最后一个参数是调用返回时调用的JavaScript函数。看起来像:
function LoadVersionsCallback(result) {
...
// I make a drop down list box out of the results:
parts = result.split('|');
for (var i = 0; i < parts.length; i++) {
_ddl.options[_ddl.options.length] =
new Option(parts[i].replace(/~/g, ", "), parts[i]);
}
...
}
函数LoadVersionCallback(结果){
...
//我从结果中创建一个下拉列表框:
parts=结果分割(“|”);
对于(变量i=0;i
最后,必须将脚本管理器属性“EnablePageMethods”设置为“true”
因此,可以从JavaScript调用页面后台代码上的静态函数
<ajaxToolkit:ToolkitScriptManager ID="ScriptManager1"
runat="server" EnablePageMethods="true"
EnablePartialRendering="true"
OnAsyncPostBackError="ScriptManager1_AsyncPostBackError">
</ajaxToolkit:ToolkitScriptManager>