c# - 如何在没有页面重新加载的情况下调用页面方法?

标签 c# javascript jquery asp.net ajax

这似乎是常见问题解答。但我脑子里有些东西,让我解释一下。 我搜索了很多方法来做这件事,最后我发现了这些灵魂:

  1. Jquery With Ajax
  2. Webform_Docallback
  3. 脚本管理器和更新面板

所以我需要的是 Something Like 第一个解决方案,但也想访问 this 对象甚至 page controls 。和原因不使用第二个和第三个解决方案是他们调用 Page-Reload first and then call that method .这就是我需要的!

有什么解决办法吗?有小费吗?

Additional Info :
我需要类似的东西:通过 button_click 调用方法并转到服务器端。在服务器端调用 Wcf-Service 最后做一些事情。 (如绑定(bind)网格数据源、更改文本框值等)。

几乎 jQuery with Ajax 是我需要的。但我用这种方式遇到了这些问题!

  1. 没有访问这个对象的权限
  2. 没有访问页面控件的权限

So How to solve these issue's?

最佳答案

第一个

在.cs文件中创建WebMethod

[WebMethod]
public static string Foo() 
{ 
  //......
}

如果你想使用 session 你应该

[WebMethod(EnableSession = true)] or [WebMethod(true)]
public static string Foo() 
{
    //......
}

然后,通过js调用webmothod

$.ajax({
type: "POST",
contentType: "application/json",
url: "WebForm1.aspx/Foo",
data: "{}",
dataType: "json",
success: function(){.......}
});

希望有用...

关于c# - 如何在没有页面重新加载的情况下调用页面方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7137553/

相关文章:

c# - 如何使用 NUnit 测试带有 out 或 ref 参数的方法?

c# - 如何将Azure 2.3项目升级到Azure 2.4?

javascript - 如何通过迭代在 javascript 中创建稀疏数组?

javascript - 使用 JavaScript 隐藏 SVG 元素

javascript - jQuery UI : TypeError: $(. ..).accordion 不是函数

c# - 将列表<int> 转换为连接的整数字符串?

c# - XML 元素具有无效的子元素 'X',应为 'X'

javascript - 使用reduce 对一系列数字求和

javascript - 如何使用 JavaScript 发出 get 请求?

Jquery datepicker only year and month 如何在有多个日期选择器时设置 CSS 以隐藏日历?