Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка элемента на наличие в массиве
 
 автор: aexb   (11.04.2006 в 11:21)   письмо автору
 
 

Есть вот такой вот массив JavaScript:

<script>
var twoarray_js = new Array();
twoarray_js["50078727"] = new Array("Article one", "50", "49");
twoarray_js["40066471"] = new Array("Article two", "50", "169");
twoarray_js["30075923"] = new Array("Article three", "50", "129");
twoarray_js["30078728"] = new Array("Article four", "50", "39");
twoarray_js["20080307"] = new Array("Article five", "50", "15");
</script>


И есть поле ввода:

<form name="forma">
<input type="text" name="val1" value="">
</form>


В input вводится артикульный номер товара (например, 30075923, то есть ключ элемента массива). Необходимо написать скрипт: пользователь вводит артикульный номер товара (тот же 30075923), а скрипт проверяет по onBlur(), есть ли элемент с таким ключом в массиве, и, соответственно, выводит alert с руганью, если его нет...

Фактически, проверка элемента на наличие.
Помощь очень нужна!

   
 
 автор: RMW   (11.04.2006 в 12:32)   письмо автору
 
   для: aexb   (11.04.2006 в 11:21)
 


<html>
<head>

<script> 
var twoarray_js = new Array(); 
twoarray_js["50078727"] = new Array("Article one", "50", "49"); 
twoarray_js["40066471"] = new Array("Article two", "50", "169"); 
twoarray_js["30075923"] = new Array("Article three", "50", "129"); 
twoarray_js["30078728"] = new Array("Article four", "50", "39"); 
twoarray_js["20080307"] = new Array("Article five", "50", "15");

function CheckAr(x)
{
  for(var e in twoarray_js)
  {
    if(e == x) return;
  }
  
  alert('Такого элемента не существует');
}
 
</script>

</head>
<body>
<form name="forma"> 
<input type="text" name="val1" value="" onBlur = CheckAr(this.value)> 
</form>
</body>
</html>

   
 
 автор: aexb   (11.04.2006 в 12:56)   письмо автору
 
   для: RMW   (11.04.2006 в 12:32)
 

Спасибо, все заработало!

   
 
 автор: 12345   (11.04.2006 в 13:04)   письмо автору
 
   для: RMW   (11.04.2006 в 12:32)
 

onblur=if(!twoarray_js[this.value])alert('...');


Юзабельнее поставить prompt c предложением сменить номер на другой.

<input onblur=if(!twoarray_js[this.value])this.value=prompt('...',this.value)||this.value;>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования