Проверка полей на ввод, подцветка не введенных полей

Discussion in 'PHP' started by .::BARS::., 22 Apr 2010.

  1. .::BARS::.

    .::BARS::. Elder - Старейшина

    Joined:
    13 Oct 2007
    Messages:
    379
    Likes Received:
    45
    Reputations:
    10
    Привет всем... помогите реализовать такую фишу
    http://www.ice27.ru/kart.php
    это скрипт реги анкет...
    важные поля - фио, тел и мыло...
    нужно как то явой проверять на ввод в поле.. и если не введено, то выделять красным...
    как такое замутить?
    я добавил к полям ключ required
    но он работает только в опере...
     
  2. diGriz

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

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Можно сделать проверку при событии onBlur, т. е. при потере фокуса:
    Code:
    <script type="text/javascript">
    function checkField(val) {
    	if(document.getElementById(val).value == "") {
    		document.getElementById(val).style.border = "1px solid red";
    	} else  {
    		document.getElementById(val).style.border = "";
    	}
    }
    </script>
    <input type="text" name="name" id="name" onblur="checkField(this.id)"  />
    <input type="text" name="email" id="email" onblur="checkField(this.id)"/>
    
    Ну, а лучше при сабмите формы проверить поля:
    Code:
    <script type="text/javascript">
    function checkField(val) {
    	if(document.getElementById(val).value == "") {
    		document.getElementById(val).style.border = "1px solid red";
    	} else  {
    		document.getElementById(val).style.border = "";
    	}
    }
    function SendForm() {
    var err = "";
    if (document.getElementById("name").value == "") {
    	document.getElementById("name").style.border = "1px solid red";
            err = 1;
        }
    
    if (document.getElementById("email").value == "") {
    	document.getElementById("email").style.border = "1px solid red";
    	err = 1;
        }
    if(err) {
    	return false;
    }
    return true;
    
    }
    </script>
    <form action="aa.php" method="post" onsubmit="return SendForm();">
    <input type="text" name="name" id="name" onblur="checkField(this.id)"  />
    <input type="text" name="email" id="email" onblur="checkField(this.id)"/>
    <input type="submit" name="submit"/>
    </form>
    
     
    #2 diGriz, 22 Apr 2010
    Last edited: 22 Apr 2010
    1 person likes this.
  3. .::BARS::.

    .::BARS::. Elder - Старейшина

    Joined:
    13 Oct 2007
    Messages:
    379
    Likes Received:
    45
    Reputations:
    10
    спасибо