Может кто-нибудь, пожалуйста, скажите мне, в чем проблема с этим кодом:

function c(id)
{
    var empty = document.getElementById(id);
    if(empty.length<1)
    {
        window.alert ("This field cant be left empty");
        return true;
    }
    else
    {
        return false;
    }

}

Это мой html-код:

<textarea rows="3" cols="80" id="ta1" onChange="c('ta1');"></textarea>
1
suhas 22 Янв 2013 в 13:55

4 ответа

Лучший ответ

Необходимо проверить свойство value текстовой области, чтобы определить, является ли оно пустым.

   var content = document.getElementById(id).value;

   if(content.length<1)
   {
        window.alert ("This field cant be left empty");
        return true;
   }
   else
   {
        return false;
   }

Рабочий пример: http://jsfiddle.net/35DFR/2/

4
Kevin Bowersox 22 Янв 2013 в 10:22

Попробуй это:

function c(id)
{
    if(document.getElementById(id).value == '')
    {
        window.alert ("This field cant be left empty");
        return true;
    }
    else
    {
        return false;
    }

}

Если вы хотите пойти немного дальше, вы можете сначала урезать значение.

Обновить:

Из комментариев попробуйте изменить onchange на onkeyup :

<textarea rows="3" cols="80" id="ta1" onkeyup="c('ta1');"></textarea>
0
skub 22 Янв 2013 в 10:33
function c(id) {
    var empty =document.getElementById(id);
    if(!empty.value){
        window.alert("This field cant be left empty");
        return true;
    }else{
        return false;
    }
}

Попробуй это

0
wildpea 22 Янв 2013 в 10:11
if (YOURFORM.YOURTEXTFIELDVARIABLENAME.value == "")

{
     return True

}
0
Gjordis 22 Янв 2013 в 09:57