【发布时间】:2011-02-14 15:15:09
【问题描述】:
我有一个包含多个验证器控件的注册表单。我正在通过以下方式检查用户名可用性 AJAX(使用 jQuery,而不是 UpdatePanel)。如果使用了用户名,我想像其他 ASP.NET 验证器从我的 JavaScript 函数中一样使页面无效。这可能吗?例子?
这是我目前的功能:
// In head...
<script type="text/javascript">
$(document).ready(function () {
$('#<%= username.ClientID %>').blur(function () {
$.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
url: 'MyService.asmx/CheckAvailability',
dataType: 'json',
data: '{ "username": "' + username + '" }',
success: function (response) {
// stuff
// If username is taken, invalidate
}, error: function () { /* stuff */ }
});
});
});
</script>
// The markup...
<dl><dt>Username</dt>
<dd>
<asp:textbox id="username" runat="server" />
<asp:requiredfieldvalidator id="usernameRequiredValidator" runat="server"
controltovalidate="username"
errormessage="Required"
display="Dynamic" />
<span id="avail_response"></span>
<!-- More stuff... -->
【问题讨论】:
-
你能解释一下'使页面无效'的意思吗?或者举个例子。 .
-
当您的表单元素之一“无效”时,用户无法提交表单。这是使用 ASP.NET 验证控件自动处理的。我想从我的 AJAX 函数中挂钩这个功能。
-
不是让页面失效,而是让页面中的提交按钮失效就够了吗?
标签: javascript asp.net validation