ho creato un WebMethod nel file code-behind della mia pagina come tale:ASP .NET: Impossibile chiamare Pagina WebMethod utilizzando jQuery
[System.Web.Services.WebMethod()]
public static string Test()
{
return "TEST";
}
ho creato la seguente pagina HTML di provarlo:
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"/></script>
<script type="text/javascript">
function test() {
$.ajax({
type: "POST",
url: "http://localhost/TestApp/TestPage.aspx/Test",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "text",
success: function(msg) {
alert(msg.d);
}
});
}
</script>
</head>
<body>
<button onclick="test();">Click Me</button>
</body>
</html>
Quando faccio clic sul pulsante, l'AJAX si spegne, ma non viene restituito nulla. Quando eseguo il debug del mio codice, il metodo Test()
non viene nemmeno chiamato. Qualche idea?
Problema risolto! Grazie Code Poet e tutti gli altri che hanno risposto. Era duplice: il 'dataType' era parte del problema, quindi ho dato a tutti un voto su chi ha risposto su quella parte. In definitiva, si è arrivati a violare inavvertitamente la stessa politica di origine, motivo per cui l'ho contrassegnato come la soluzione. Grazie ancora a tutti. Apprezzalo! – John
@ John felice di aiutare. –