有没有什么办法可以使用Ajax我使用JQuery为此)与asp.net webforms无需通过页面生命周期运行?如何使用asp.net webforms
6
A
回答
7
如果你使用jQuery的,正如你所说,你可以use jQuery to call Page Methods directly,而不会产生MicrosoftAjax.js和服务代理的开销,它产生使PageMethods.MethodName()
语法。
鉴于PageName.aspx
静态[WebMethod]
装饰方法,这就是所谓的MethodName
,这是你如何可以调用它的客户端的例子:
$.ajax({
type: "POST",
url: "PageName.aspx/MethodName",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
// Do something interesting with msg.d here.
}
});
1
确实有办法。退房this answer。这个特殊的例子在后端使用MVC,但你也可以用基本的ASP.NET来完成 - 只需要调用PageMethods/WebMethods via AJAX即可。
其中一个关键是声明一个带有WebMethod属性的静态方法。
7
根据您要做的事情,您可以使用Web方法或Http处理程序。 Web方法可能更容易一些,并且只是用[WebMethod]属性装饰的服务器端静态函数。
下面是一个例子:
C#:
[WebMethod]
public static string SayHello(string name)
{
return "Hello " + name;
}
ASPX:
<asp:ScriptManager ID="sm" EnablePageMethods="true" runat="server"/>
<script type="text/javascript">
#(function()
{
$(".hellobutton").click(function()
{
PageMethods.SayHello("Name", function(result)
{
alert(result);
});
});
}
</script>
<input type="button" class="hellobutton" value="Say Hello" />
+0
代码在回发事件后无法使用! – Vijayaraghavan 2016-09-06 11:07:39
1
您可以使用页面方法,因为他们是所谓。
它们本质上是Page
上的方法,但声明为静态方法。
public class MyPage : System.Web.UI.Page
{
[WebMethod]
public static string Reverse(string message) {
return message.Reverse();
}
}
然后,他们可以使用这样的客户端脚本:
function reverseMyString(message) {
// Magically generated code appears
PageMethods.SendForm(message, OnSucceeded, OnFailed);
}
function OnSucceeded(result) { alert(result) }
function OnFailed(error) { alert(error.get_message()) }
他们是相当整洁相比,ASMX Web服务,因为他们可以留一个特定的页面构建了相同的Web窗体的功能内。
相关问题
- 1. 如何从asp.net webforms使用NVelocity?
- 2. 使用ASP.NET webforms的MVC
- 3. 使用WebForms的ASP.Net路由
- 4. 使用jQuery从asp.net调用asp.net mvc webforms
- 5. 如何在asp.net中使用带有iFrame的用户控件webforms
- 6. jqTouch with ASP.NET Webforms
- 7. jQuery ASP.Net Webforms AJAX
- 8. ASP.NET Webforms IHttpModule Singleton
- 9. ASP.NET MVC或WebForms?
- 10. ASP.NET MVC + WebForms
- 11. ASP.NET webforms without javascript
- 12. ASP.NET 4 Webforms Routing
- 13. ASP.NET WebForms确认
- 14. 使用VisualJS.NET或VisualWebGUI的ASP.NET WebForms/MVC
- 15. 在ASP.NET,Webforms或MVC中使用ExtJS?
- 16. 在ASP.NET WebForms中使用WCF C#
- 17. 将ASP.Net MVC与WebForms结合使用
- 18. 在Mono上使用F#和ASP.NET Webforms
- 19. 使用Angular js API与ASP.net webForms
- 20. 在Visual Basic中使用log4net和ASP.Net WebForms
- 21. ASP.net WebForms - 在标记中使用GetRouteUrl
- 22. 在我的网页上使用webforms(ASP.NET)
- 23. 如何在ASP.net中使用FuelUX向导webforms
- 24. 如何使ASP.NET Webforms应用程序可测试?
- 25. 如何在ASP.NET WebForms页面上使用Thickbox和jqGrid?
- 26. 如何在WebForms .aspx页面中使用ASP.Net MVC View?
- 27. 如何使用查询字符串路由ASP.NET 4 WebForms?
- 28. 如何在ASP.NET Webforms中使用Autofac注入NLog
- 29. ASP.NET WebForms TreeView节点如表
- 30. 如何将Perl与ASP.NET Webforms集成?
你为什么要这么做? – BentOnCoding 2011-03-16 21:27:45
因为浏览页面生命周期是毫无意义的,当你需要的是一些数据检索或通过AJAX执行的操作。 – 2011-03-16 22:24:47