Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с onBlur! или со мной) (https://javascript.ru/forum/misc/4282-problema-s-onblur-ili-so-mnojj.html)

Ted 08.07.2009 19:42

Проблема с onBlur! или со мной)
 
В следующем примере не выполняется обнуление значений. Подскажите, пожалуйста, почему? Спасибо:)

...
<input type="text" name="day" onBlur="DayCheck(this.value)">
...
<script type="text/javascript">
function DayCheck(daytext)
{                 
 if(daytext.length == 1) 
      {
      if(/[^0-9]/.test(daytext))
       {
       alert('Неверный символ!');
       daytext = '';//Вот тут
       }  
      else
       daytext = '0'+daytext;//и тут
      }
 else if(daytext.length == 2 && (/[^0-9]/.test(daytext) || parseInt(daytext) > 31))
      {
      alert('Неверное значение!');
      daytext = '';
      }
 else if(daytext.length > 2)
      {
      alert('Неверное значение!');
      daytext = '';//ещё здесь
      }
}    
</script>

Gvozd 08.07.2009 20:00

потому что тут происходит передача параметра по значению(копируется), а не по ссылке
передавайте this вместо this.value, ну и в функции соответсвующие изменения

Ted 08.07.2009 20:04

Спасибо!!! А в JS есть передача по значению типа &? В любом случае выручили!

Gvozd 08.07.2009 20:29

нету
и как раз-таки это (&) называется "передача по ссылке"


Часовой пояс GMT +3, время: 17:15.