Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблема с помощником на сайте (https://javascript.ru/forum/misc/27321-problema-s-pomoshhnikom-na-sajjte.html)

DanyDee 09.04.2012 13:53

Проблема с помощником на сайте
 
Всем привет! Был написан скрипт сортировки продукции для сайта http://knigi.webcraftstudio.ru/ , но возникла проблема - при вводе цифр в форме Цена от __ до __ , срабатывает alarm Цена введена неправильно! Пробовал изменить код, искать причину, мои подозрения падают на !a.test(tag.search_price_to.value), в синтаксе проблем вроде не нашел, но решить проблему не смог, прошу вашей помощи. В итоге нужно чтобы поиск нормально работал, без алармов.


//код на сайте [url]http://knigi.webcraftstudio.ru/[/url]

<span>
Цена:  от  
<input type="text" name="search_price_from" value="" size="2" maxlength="80" onchange="sent1(helper)"/>
  до  
<input id="pr_from" type="text" name="search_price_to" value="" size="2" maxlength="80" onchange="sent1(helper)"/>
</span>
 <form action="/index.php?ukey=auxpage_helper" method="get" id="help_form" name="helper">
  <input type="hidden" name="ukey" value="auxpage_helper">


//код в файле myscript.js

function sent1(tag){
	a=/[0-9]+/i;
	if (tag.search_price_from.value!="" || tag.search_price_to.value!=""){
	if( !a.test(tag.search_price_from.value) || !a.test(tag.search_price_to.value)){
			alert('Цена введена неправильно!');
			tag.search_price_to.value="";
			tag.search_price_from.value="";
			return false;
		}
	}
	else return true;
}
str="";
function sent(){
	flag=false;
	for(i=0; i < 14; i++){
		t='tag['+i+']';
		if(document.getElementById(t).checked==true){ flag=true;}
	}
	s="";
	if (flag==false){
		s="Серьезный смешной стильный практичный романтичный необычный 

небольшой книги moleskine аксессуары игры интерьер канцелярия пазлы фотоаксессуры";
	}
	str=str.replace(" ","");
	if (s!="")	document.getElementById('sms').value=str+s;
	else document.getElementById('sms').value=str;
	for (i=0; i < 38; i++) {
		t='tag['+i+']';
		document.getElementById(t).checked=false;
	}	
	//---------------------------------------
	
}

VitalikPro 09.04.2012 17:29

function sent1(tag){
	a=/[0-9]+/i;

	if (tag.search_price_from.value!=""){
	if( !a.test(tag.search_price_from.value)){
			alert('Цена введена неправильно!');
			tag.search_price_to.value="";
			tag.search_price_from.value="";
			return false;
		}
                else return true;
	}

	if (tag.search_price_to.value!=""){
	if(!a.test(tag.search_price_to.value)){
			alert('Цена введена неправильно!');
			tag.search_price_to.value="";
			tag.search_price_from.value="";
			return false;
		}
                else return true;
	}	

}


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