Изменения класса родителя.

Discussion in 'PHP' started by ZnikiR, 6 Jul 2010.

  1. ZnikiR

    ZnikiR Member

    Joined:
    14 Jan 2009
    Messages:
    117
    Likes Received:
    21
    Reputations:
    -5
    В общем есть форма примерно след типа.
    HTML:
    <p class="input">
         <input type="text" id="email" name="email"/>
    </p>
    
    В общем вопрос в следующем:
    Я делаю проверку регуляркой мыла,и если мыло не верно мне надо сменить класс родительского элемента <p> как можно это сделать с помощью Javascript?
     
  2. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Добавьте атрибут id
    Code:
    <p class="input" id="p1">
    
    затем где-то
    Code:
    document.getElementById('p1').className = "myclass";
    
     
  3. ZnikiR

    ZnikiR Member

    Joined:
    14 Jan 2009
    Messages:
    117
    Likes Received:
    21
    Reputations:
    -5
    Ну с id ясно,что это сделать легко,просто у меня много проверяемых полей и я хотел бы написать универсальную функцию для всех.
    Вот тут нарыл,что есть такой элемент parentNode,пытаюсь понять как его юзать.

    Вроде получилось
    Code:
    var a = document.getElementById('email').parentNode.parentNode.className;
    alert(a);
    
    Только это на два элемнта выше.
     
    #3 ZnikiR, 6 Jul 2010
    Last edited: 6 Jul 2010
  4. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Code:
    document.getElementById('email').parentNode.className = 'myclass';
    
     
    1 person likes this.
  5. ZnikiR

    ZnikiR Member

    Joined:
    14 Jan 2009
    Messages:
    117
    Likes Received:
    21
    Reputations:
    -5
    Я понял. =)
    ты что думаешь я совсем дурак?
    Просто мне надо в скрипте на два элемента выше,а не на один.
    Но всё равно спасибо.