Я открываю диалоговое окно jquery, оно открывается очень хорошо, содержимое этого диалогового окна является формой, один из входных данных этой формы:
<input onkeyup="testOnKeyUp();" type="text" name="userName" id="userName">
Вот, где моя проблема, когдакто-то вводит ключ в этом поле ввода, следующий код активирован и должен работать, но он просто не работает.
var validateUserNameSpan = $j('#userNameSpan');
function testOnKeyUp(){
validate(this, validateUserNameSpan, 'username');
}
function validate(field, span, property) {
if (field.value != field.lastValue) {
if (field.timer) clearTimeout(field.timer);
field.timer = setTimeout(function () {
span.value = "";
span.removeClass('error').html('checking ...');
$j.ajax({
url: '/signup/'+property,
data: property + '=' + field.value,
dataType: 'json',
type: 'post',
success: function (json) {
updateMessage(span, json.success, json.message);
if(property=="email"){
emailValid = true;
}else if(property=="username"){
userNameValid = true;
}
},
error: function() {
ajFailureInitSignup(span);
if(property=="email"){
emailValid = false;
}else if(property=="username"){
userNameValid = false;
}
}
});
}, 400);
if(userNameValid && emailValid) document.getElementById('buttonLink').onclick=null ;
field.lastValue = field.value;
}
}
Что я делаю не так?
Не знаю, ноgoogling У меня есть информация, которая заставляет меня чувствовать, что:
$j.ajax({
, который я запускаю внутри этого диалога (функция проверки), не выполняется, почему я так говорю?поскольку этот диалог создается в DOM и после его создания этот $ j.ajax не выполняется.
это правда?
Я действительно благодарен за любую помощь.