I created a WebMethod in the code-behind file of my page as such:
[System.Web.Services.WebMethod()]
public static string Test()
{
return "TEST";
}
I created the following HTML page to test it out:
<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>
When I click the button, the AJAX fires off, but nothing is returned. When I debug my code, the method Test()
doesn't even get called. Any ideas?
dataType
was part of the problem, so I gave everyone a vote up who answered on that part. Ultimately, it came down to inadvertently violating the same origin policy, which is why I marked this as the solution. Thanks again everyone. Appreciate it! – Galloway