コードビハインドのあるページ(default.aspx)があります。a $ .ajax urlは、ある場所から応答を受け取っています。その成功時に、codebehind関数を呼び出したいと思います。
(コードを難読化する際にミスをした場合、$。ajaxは完全に機能し、目的の応答が得られます)。
これはどのように可能ですか?
私が使用しているコード:
jQuery.support.cors = true; // force cross-site scripting (as of jQuery 1.5)
$.ajax({
type: "POST",
url: URL,
data: parameters,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var resultCount = response.d
alert("*** RESULT ****" + resultFields);;
var string = StringReturn(); // the codebehind
alert(string);
},
error: function (e) {
alert("Unavailable");
}
});
コードビハインド:
[WebMethod]
protected static string StringReturn()
{
return "StringReturn() success";
}
ただし、StringReturnは有効な関数ではないというエラーメッセージが表示されます。
何か助けていただければ幸いです。
アドバイスに従って、次のコード行をページに追加しました。
<asp:ScriptManager ID="ScriptMgr" runat="server" EnablePageMethods="true"> </asp:ScriptManager>
また、Successイベントでjavascript関数を呼び出すようにコードを変更しました。関数は次のとおりです。
function HelloWorlds() {
alert("HelloWorld() method");
message = PageMethods.StringReturn();
message.toString();
alert(message);
}
ただし、それは機能していないようです。私は何が欠けていますか?