进行验证时,输入不会自动对焦

时间:2017-11-13 18:59:54

标签: javascript jquery

我正在验证输入#rut_usu。我正在寻找,如果输入的值已经存在于数据库中,如果它存在,我会显示一条消息,一旦它失焦,这就完成了,这个想法是这样做,表单的其他元素被阻止,它再次自动聚焦#rut_usu我已经设法自我,如果,当它没有焦点时,当单击表单时,它不会,如果它在另一个输入中,那就是问题。

的Javascript

$("#rut_usu").focusout(function(){
var parametros = {"rut_usu" : $("#rut_usu").val()};
//search
$.ajax({
    type: "post",
    url: '<?php echo base_url();?>C_Usuarios/consultar_rut',
    data: parametros,
    dataType: "html",
    error: function(){
        alert("error petición ajax");
    },success: function(data){                                                          
      if(data){ 
             window.document.r_usuarios.rut_usu.focus(); 
             window.document.r_usuarios.rut_usu.select();
            $('#btn_insert').attr('disabled', 'disabled');
            $('#resultado').html('<span style="font-weight:bold;color:red;">that RUT already exists in the Database</span>');
        }  
        else{  $("#resultado").addClass("hide"); return true;

        }
       }
      });
    });

   $("#name_user").keypress(function(){

   $("#name_user").removeClass("blanco");
   $("#msg_nom").addClass("hide");
  });
  $("#name_user").focusout(function(){         
  if($("#name_user").val().length<1){
     $("#name_user").addClass("blanco");
     $("#msg_nom").removeClass("hide");
        window.document.r_usuarios.name_user.focus();   
        window.document.r_usuarios.name_user.select();    
        return false; 
       }
       return true;
     })

使用这些行,我根据if进行了字段自动聚焦,并且表单被阻止。但是在#rut_usu的情况下,如果我添加true或false,则不执行该函数.name_user是具有类似验证的另一个输入,但如果其值为空,则它可以正常工作。如果有人知道其他任何方式,我仍然会喜欢它,谢谢。

window.document.name_form.name_input.focus();   
window.document.name_form.name_input.select();    
return false; 

1 个答案:

答案 0 :(得分:0)

使用$("#name_user").focus()代替

    window.document.r_usuarios.name_user.focus();   
    window.document.r_usuarios.name_user.select();