Я новичок в Jquery.Я пытаюсь вызвать метод сервера из моего пользовательского элемента управления с помощью jquery ajax.Мне сообщают, что когда страница сервера, на которую отправляется запрос, находится в корневом пути, ajax работает.Но когда я переместил страницу в подпапку и изменил параметр url Jquery ajax, ничего не произошло ...
Ниже приведен веб-метод в WebForm1.aspx.cs:
namespace WebApplication11
{
public partial class WebForm1 : System.Web.UI.Page
{
[System.Web.Services.WebMethod]
public static string test2()
{
return "TestString";
}
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
Когда страница находится под root, она работает.Моя функция ajax в пользовательском элементе управления находится здесь:
<%@ Control Language="C#" AutoEventWireup="true"
CodeBehind="WebUserControl1.ascx.cs"
Inherits="WebApplication11.NewFolder1.WebUserControl1" %>
<script type ="text/javascript">
function ajaxTest()
{
$.ajax({
type: "post",
url: "WebForm1.aspx/test2",
data: "{}",
contentType: "Application/json; charset=utf-8",
dataType: "json",
success: function (r) {alert(r.d);}
})
}
</script>
<input type = "checkbox" id = "c1" onchange = "ajaxTest()" />
Но после того, как я переместил страницу WebForm1.aspx из корня в подпапку «NewFolder2» и изменил «url» в методе ajax с «WebForm1».aspx / test2 "to" /NewFolder2/WebForm1.aspx/test2 "или" NewFolder2 / WebForm1.aspx / test2 ", ничего не произошло.
Я расстроен сейчас.Кто-нибудь может дать мне подсказку, чтобы понять это?Большое спасибо!