zrobićAjax połączeń WebPage metoda nie działa
<script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
<script type="text/javascript">
function CallPageMethod(methodName, onSuccess, onFail) {
var args = '';
var l = arguments.length;
if (l > 3) {
for (var i = 3; i < l - 1; i += 2) {
if (args.length != 0) args += ',';
args += '"' + arguments[i] + '":"' + arguments[i + 1] + '"';
}
}
var loc = window.location.href;
loc = (loc.substr(loc.length - 1, 1) == "/") ? loc + "Report.aspx" : loc;
$.ajax({
type: "POST",
url: loc + "/" + methodName,
data: "{" + args + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: onSuccess,
fail: onFail
});
}
function success(response) {
alert(response.d);
}
function fail(response) {
alert("Ошибка.");
}
function select() {
...........
CallPageMethod("SelectBook", success, fail, ...........);
}
</script>
A moja Script Manager jest
<asp:ScriptManager ID="ScriptManager1"
EnableScriptGlobalization="true"
EnableScriptLocalization="true"
EnablePageMethods="true"
EnablePartialRendering="true" runat="server" />
Ale kiedy wykonać wybierz funkcję mam nic ... żadnych wiadomości w ogóle.
dziennika błędu:
[ArgumentException]: Unknown web method SelectBook.
Parameter name: methodName
at System.Web.Script.Services.WebServiceData.GetMethodData(String methodName)
at System.Web.Handlers.ScriptModule.OnPostAcquireRequestState(Object sender, EventArgs eventArgs)
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
I moja metoda internetowej:
<WebMethod()> Public Function SelectBook(ByVal values As String, ByVal valuesG As String, ByVal valuesX As String, ByVal valuesXG As String) As String
'....
Return If(((vals.Length = valsG.Length) And (valsX.Length = valsXG.Length)), SQLModule.UpdateAdvCode(vals, valsG, valsX, valsXG), "Ошибка чтения диспетчерских кодов")
End Function
Gdybym tylko zrobić ostrzegania (CallPageMethod ("SelectBook", sukces, porażkę, ........ ...)) Widzę "niezdefiniowany", ale co nieokreślone? Próbowałem debugować ten javascript, ale nie mogę go naprawić. To zadziałało i rozumiem, jak to musi działać, ale nie mam pojęcia, dlaczego jest na razie zepsuty i jak to naprawić. Pomóż mi z tym, proszę.
Niektóre więcej informacji
Server ASP.NET Development Server/10.0.0.0
Date Thu, 03 Feb 2011 11:30:51 GMT
X-AspNet-Version 4.0.30319
Cache-Control private
Content-Type text/html; charset=utf-8
Content-Length 3517
Connection Close
dlaczego blisko?
To samo z $ .get() lub $ .getJSON() :( – Cynede
użyj firebug i sprawdź, czy jest tam jakikolwiek JSON jak wyjście ... – Axxxon
po aktualizacji z dziennikiem błędów – Cynede