Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.12.2016, 22:55
Профессор
Отправить личное сообщение для porezon Посмотреть профиль Найти все сообщения от porezon
 
Регистрация: 09.01.2013
Сообщений: 167

Проблема между js
Здравствуйте! Есть такая проблема, есть проверка формы на ввод данных, если форму ставлю на обычной странице то все хорошо, но если вставляю на всплывающую она не работает


Код самой формы проверки

jQuery(function(){
       $('.text').val('');

    $('#email').blur(function checkMail(){
        var emailV = $('#email').val();
        var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,6})+$/;
        if (filter.test(emailV)) {
        document.getElementById("e_login1").style.display = "inline";
        document.getElementById("e_login").style.display = "none"; 
        }else{
        document.getElementById("e_login").style.display = "inline";
        document.getElementById("e_login1").style.display = "none";
        }
    });

        $('#username').blur(function(){
        var nameLngth = $('#username').val().length;
        if(nameLngth <= 1){
        document.getElementById("u_login").style.display = "inline";
        document.getElementById("u_login1").style.display = "none";
        } else {
        document.getElementById("u_login1").style.display = "inline";
        document.getElementById("u_login").style.display = "none"; 
        }
    });
    
   
    $('#password').blur(function(){
        var nameLngth = $('#password').val().length;
        if(nameLngth <= 1){
        document.getElementById("p_login").style.display = "inline";
        document.getElementById("p_login1").style.display = "none";
        } else {
        document.getElementById("p_login1").style.display = "inline";
        document.getElementById("p_login").style.display = "none"; 
        }
    });

        $('#cpassword').blur(function(){
        var nameLngth = $('#cpassword').val().length;
        if(nameLngth <= 1){
        document.getElementById("ps_login").style.display = "inline";
        document.getElementById("ps_login1").style.display = "none";
        } else {
        document.getElementById("ps_login1").style.display = "inline";
        document.getElementById("ps_login").style.display = "none"; 
        }
    });


    $('#pincode').blur(function(){     
        var phoneV = $('#pincode').val();
        var phoneLngth = phoneV.length;

        if( /[^0-9]/.test(phoneV) ) {
    document.getElementById("c_login").style.display = "inline";
    document.getElementById("c_login1").style.display = "none";
        } else if (phoneLngth <= 3) {
    document.getElementById("c_login").style.display = "inline";
    document.getElementById("c_login1").style.display = "none";
        } else {
    document.getElementById("c_login1").style.display = "inline";
    document.getElementById("c_login").style.display = "none"; 
        }
    });

        $('#name').blur(function(){
        var nameLngth = $('#name').val().length;
        if(nameLngth <= 1){
        document.getElementById("n_login").style.display = "inline";
        document.getElementById("n_login1").style.display = "none";
        } else {
        document.getElementById("n_login1").style.display = "inline";
        document.getElementById("n_login").style.display = "none"; 
        }
    });

        $('#surname').blur(function(){
        var nameLngth = $('#surname').val().length;
        if(nameLngth <= 1){
        document.getElementById("s_login").style.display = "inline";
        document.getElementById("s_login1").style.display = "none";
        } else {
        document.getElementById("s_login1").style.display = "inline";
        document.getElementById("s_login").style.display = "none"; 
        }
    });
    
});



код всплывающего окна в которой появляется форма



function stats(id) {
var http = createRequestObject();
        document.getElementById('box').style.display = 'block';
        if( http )
        {
            http.open('GET', 'ajax/info.php?id='+id);
            http.onreadystatechange = function ()
            {
                if(http.readyState == 4)
                {

                    document.getElementById('outbox').innerHTML = http.responseText;
                    document.getElementById('outbox').style.display = 'block';
                }
            }
            http.send(null);
        }

    }

function createRequestObject()
    {
        try { return new XMLHttpRequest() }
        catch(e)
        {
            try { return new ActiveXObject('Msxml2.XMLHTTP') }
            catch(e)
            {
                try { return new ActiveXObject('Microsoft.XMLHTTP') }
                catch(e) { return null; }
            }
        }
    }



подскажите как решить эту проблему
Ответить с цитированием
  #2 (permalink)  
Старый 20.12.2016, 07:33
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,645

Либо тут if(http.readyState == 4) назначать обработчики событий, либо делегировать их.

И выбрасывайте лишние "дубликаты-функции", создайте правила, к примеру есть атрибут описывающий шаблон, значит проверка по шаблону иначе проверка на заполнение, но только после .trim()

Последний раз редактировалось laimas, 20.12.2016 в 07:36.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Операционная Система на JS Icat Общие вопросы Javascript 3 17.04.2018 22:54
Проблема с js кликандера 9_Dima_9 Javascript под браузер 1 14.06.2013 14:54
Вставка кода js с помощью js Alice Общие вопросы Javascript 1 12.06.2013 18:05
проблема с OpenApi Auth (fb, vk), js Maximor17 Events/DOM/Window 0 08.07.2011 16:49
Js + Ie7 проблема onuvidelsolnce Internet Explorer 4 28.03.2011 19:21