Поскольку вы не указали разметку, я предполагаю разметку следующим образом.
<form id="form1" action="~/something.aspx" method="post">
<label>Username</label>:
<input type="text" id="username" name="username" onblur="validate();"/>
<br/>
<label>Password:</label>
<input type="text" id="password" name="password"/><br/>
<input type="submit" value="submit"/>
</form>
Основная идея заключается в том, что вам нужно написать JavaScript для поля имени пользователя, когда фокус находится вне (onblur
события)
Вот Javascript для приведенного выше фрагмента кода.
<script type="text/javascript">
function validate()
{
//make an ajax call to retrieve the username
$.ajax({
url:'validate.aspx/ValidateUsername',
dataType: 'json',
//... make necessary adjustments in ajax call so as to
//call the web method in validate.aspx page
success: function(data){
if(!data.d){
alert('username already exists !');
document.getElementById('username').focus();
}
}
});
}
</script>
Теперь определен ваш веб-метод для определения ajax.
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static string ValidateUsername()
{
//Now query the database to check if the username exists.
//If the username exists return 'true' other wise return 'false'
}
Надеюсь, это поможет.
Звучит легко настраивать на событие управления, например ** TextChanged ** прослушивателя в веб-формах, не так ли? –
как его использовать, пожалуйста, скажите мне, используя пример –
Использование событий текстового поля: http: //msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.textbox.textchanged (v = vs.110). aspx –