有沒有什麼辦法可以使用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 KnockoutJS
- 2. 如何在asp.net中使用breezeJS webforms
- 3. 如何讓Ninject使用ASP.NET WebForms App
- 4. 如何使用ASP.NET WebForms製作optgroup
- 5. 如何從asp.net webforms使用NVelocity?
- 6. 使用ASP.NET webforms的MVC
- 7. 使用WebForms的ASP.Net路由
- 8. 使用jQuery從asp.net調用asp.net mvc webforms
- 9. ASP.NET WebForms
- 10. 如何在ASP.NET webforms中使用FormsAuthentication時禁用或啓用Cookie?
- 11. 在ASP.NET WebForms中使用jQuery調用'WebMethod'
- 12. 如何在asp.net中使用帶有iFrame的用戶控件webforms
- 13. ASP.NET Webforms授權
- 14. ASP.NET WebForms規範
- 15. jqTouch with ASP.NET Webforms
- 16. ASP.NET MVC + WebForms
- 17. Asp.net webforms更新
- 18. Asp.net ImageUrl Webforms
- 19. ASP.NET Webforms IHttpModule Singleton
- 20. ASP.NET WebForms確認
- 21. ASP.NET MVC或WebForms?
- 22. jQuery ASP.Net Webforms AJAX
- 23. ASP.NET webforms without javascript
- 24. ASP.NET 4 Webforms Routing
- 25. ServiceStack與ASP.NET WebForms
- 26. 將ASP.Net MVC與WebForms結合使用
- 27. 使用ASP.NET Webforms的Ajax帖子
- 28. 使用VisualJS.NET或VisualWebGUI的ASP.NET WebForms/MVC
- 29. 在ASP.NET的WebForms的jqGrid使用
- 30. 在Visual Basic中使用log4net和ASP.Net WebForms
你爲什麼要這麼做? – BentOnCoding 2011-03-16 21:27:45
因爲瀏覽頁面生命週期是毫無意義的,當你需要的是一些數據檢索或通過AJAX執行的操作。 – 2011-03-16 22:24:47