我已按照此处找到的教程来基本了解标题所说的内容。到目前为止,我得出的结论是$.getJSON
简单地不起作用。
我已经将我的代码缩减为:
<script type="text/javascript">
$(document).ready(function () {
var usernameUnavailableRow = $('#usernameUnavailableRow');
var availabilityMessage = $('#availabilityMessage');
$("#UserName").hover(function () {
//usernameUnavailableRow.hide();
});
$("#UserName").blur(function () {
$.getJSON('/OCDB/UsernameAvailable.aspx?' + escape($(this).val()), function (results) {
if (results.available) {
alert("available"); //Just checking if anything even returns
} else {
alert("not available"); //Just checking if anything even returns
}
});
});
});
</script>
<table>
<tr>
<td>
<input id="UserName"></input>
</td>
</tr>
<tr id="usernameUnavailableRow">
<td>
<span id="availabilityMessage">k</span>
</td>
</tr>
</table>
我的UsernameAvailable.aspx
页面正好显示了这一点:
{ "available" : "false"}
使用时
<%@ Page Language="C#" CodeFile="UsernameAvailable.aspx.cs" Inherits="UsernameAvailable" ContentType="application/json" %>
然而,事件中什么也没有发生getJson
。
谁能告诉我哪里出错了,因为我看不到我的错误。
编辑
更改代码以删除 Javascript 产生的 404 错误(感谢@Archer),结果现在总是返回True
。我检查了该页面是否False
以使用的用户名返回,并且可以正常工作。