Das ist seltsam. Meine onSuccess() Funktion in der JavaScript-Datei gibt einen massiven HTML-Code meines gesamten Webseite anstelle des Wertes kehre ich eigentlich von meinem C# WebMethodASP.NET PageMethod onSuccess-Funktion gibt einen HTML-String zurück
1) ich Visual Studio 2015 bin auf Windows 10
2) Beim Debugging behielt ich einen Haltepunkt bei der SignupAccount C# -Methode. Der Haltepunkt wurde nicht getroffen. Es ist zu diesem Punkt nicht gekommen. ABER die onSuccess Funktion wurde
genannt
Hier ist eine Erklärung:
ASP.NET Web Form HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<!--Code-->
</head>
<body class="account2 signup" data-page="signup">
<!--Code-->
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager>
<input type="text" name="firstname" id="firstname" placeholder="First Name" required autofocus>
<input type="text" name="lastname" id="lastname" placeholder="Last Name" required autofocus>
<button type="submit" onclick="signup()" id="submit-form" class="btn btn-lg btn-dark btn-rounded" data-style="expand-left">Sign In</button>
<script src="JS/Account.js"></script>
</form>
</body>
</html>
WebMethod in C# -Code-Behind:
[WebMethod]
public static string SignupAccount(string fname, string lname)
{
return "OK";
}
Javascript:
function signup() {
var fname = document.getElementById("firstname").value;
var lname = document.getElementById("lastname").value;
PageMethods.SignupAccount(fname, lname, onSuccess, onFailure);
function onSuccess(val) {
alert(val);
//Technically, this should display "OK". But instead it displays a HTML String
//of my entire Web Page starting from the <html> tag to the end
}
function onFailure() {}
}
Warum geschieht das? Ich glaube, das Verfahren und der Code sind korrekt. Hat das etwas mit Visual Studio zu tun?
EDIT
Dies ist die Antwort, die ich von der onSuccess Funktion erhalten
Sie sehen einen XHR-Eintrag für SignupAccount im Browser Developer Tools -> Network Tab? –
@DhananjayaKuppu Nein, ich sehe keinen Eintrag dort. Ich habe versucht, ein neues Web-Formular mit nur einer Schaltfläche und einer Web-Methode zu erstellen, und ich bekomme immer noch diese massive HTML-Zeichenfolge als onSuccess Rückgabewert.Ich denke, es gibt ein Problem mit der Config – Dinuka
es könnte doppelt zu: [Post] (http://stackoverflow.com/questions/10658061/calling-asp-net-page-method-from-javascript-not-working) –