Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.03.2011, 21:27
Новичок на форуме
Отправить личное сообщение для en-k Посмотреть профиль Найти все сообщения от en-k
 
Регистрация: 13.03.2011
Сообщений: 3

Некорректная работа скрипта в разных браузерах
В общем, выручайте, без вас видимо никак, моск поломан.
Есть скрипт который проверяет поля формы регистрации.
function provreg()
			{

				var obj_form=document.forms.reg;
				var obj_pole_logincheck=obj_form.logincheck;
				var obj_pole_nick=obj_form.nick;
				var obj_pole_passcheck=obj_form.passcheck;
				var obj_pole_pass=obj_form.pass;
				var obj_pole_rpasscheck=obj_form.rpasscheck;
				var obj_pole_rpass=obj_form.rpass;
				var obj_pole_emailcheck=obj_form.emailcheck;
				var obj_pole_mail=obj_form.mail;
				var obj_pole_name1check=obj_form.name1check;
				var obj_pole_name1=obj_form.name1;
				var obj_pole_name2check=obj_form.name2check;
				var obj_pole_name2=obj_form.name2;
				var obj_pole_tel1check=obj_form.tel1check;
				var obj_pole_tel1=obj_form.tel1;
				var obj_pole_yur=obj_form.yur;
				var obj_pole_company=obj_form.company;
				var obj_pole_siterules=obj_form.siterules;




				if ((obj_pole_nick.value=='') || (obj_pole_logincheck.value=='false') )
				{
				alert ("Некорректный логин.");
				return false;
				}

				if ((obj_pole_pass.value=='') || (obj_pole_passcheck.value=='false'))
				{
				alert ("Некорректный введен пароль.");
				return false;
				}
				if ((obj_pole_rpass.value=='') || (obj_pole_rpasscheck.value=='false'))
				{
				alert ("Некорректно введен пароль.");
				return false;
				}
				if ((obj_pole_mail.value=='') || (obj_pole_emailcheck.value=='false') )
				{
				alert ("Некорректно заполнен eMail.");
				return false;
				}
				if ((obj_pole_name1.value=='') || (obj_pole_name1check.value=='false'))
				{
				alert ("Некорректно заполнено поле Фамилия.");
				return false;
				}
				if ((obj_pole_name2.value=='') || (obj_pole_name2check.value=='false') )
				{
				alert ("Некорректно заполнено поле Имя.");
				return false;
				}
				if ((obj_pole_tel1.value=='') || (obj_pole_tel1check.value=='false') )
				{
				alert ("Некорректно заполнено поле контактный телефон.");
				return false;
				}


                if (obj_pole_yur.checked)
				{
						if (obj_pole_company.value=='')
						{
          				alert ("Некорректно заполнено название организации.");
						return false;
						}
				}
				if (!obj_pole_siterules.checked)
				{
            			alert ("Прочтите и согласитесь с правилами сайта, либо прекратите регистрацию.");
						return false;
  				}



                 document.forms.reg.submit();


	}



Так вот в IE срабатывают все проверки, а в остальных браузерах Opera Safari Chrome Mozilla срабатывает только первая проверка скрипта, вот эта:
if ((obj_pole_nick.value=='')

и дальше проходит все без проверок т.е. вывод alert'a после строк :
if ((obj_pole_nick.value=='') || (obj_pole_logincheck.value=='false') )
				{
				alert ("Некорректный логин.");
				return false;
				}
alert("Alert!!!");

не срабатывает в этих браузерах никогда!

Помогите пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 13.03.2011, 21:45
Новичок на форуме
Отправить личное сообщение для en-k Посмотреть профиль Найти все сообщения от en-k
 
Регистрация: 13.03.2011
Сообщений: 3

Может быть все дело в том что input type="hidden"
var obj_pole_logincheck=obj_form.logincheck;

создается динамически вот этим кодом?
$(function() {
			$('#login').keyup(function () {
				val = $('#login').val();
				$.ajax({
				type: "POST",
				url: "checkregform.php",
				data: "login="+val,
				success: function(html){
					$("#indicatorlogin").html(html);

				}
				});
			});
		});



Файл checkregform.php -

if ($_POST['login']){

		$login = $_POST['login'];
		//Проверяем, есть ли пробелы в пароле
		if($login!='')
		{

		       if ((strlen($login)<3) or (!preg_match('/^[a-zA-Z0-9]+$/', $login)))
		       {
		       	   $html = '<div style=" width:25px; height:25px;" valign=center><img src="images/block.png" width=25 height=25/><input type="text" id="logincheck" name="logincheck" value="false"></div>';
						//$html .= "Простой";
						 $_SESSION["logincheck"]='0';

		       }
		       else {
						$q=mysql_query("select nick from users where nick='".addslashes($login)."'");
					if(mysql_num_rows($q)>0)
					{
			        	$html = '<div style=" width:25px; height:25px;" valign=center><img src="images/block.png" width=25 height=25/><input type="text" id="logincheck" name="logincheck" value="false"></div>';
						$_SESSION["logincheck"]='0';
						//$html .= "Простой";
			  		}
			  		else
			  		{
			  			$html = '<div style=" width:25px; height:25px;" valign=center><img src="images/clean.png" width=25 height=25/><input type="text" id="logincheck" name="logincheck" value="true"></div>';


						//$html .= "Надежный";
			  		}
		  		}
		}

		echo $html;

	}



Потому как загвоздка именно в этом
Ответить с цитированием
  #3 (permalink)  
Старый 15.03.2011, 14:54
Новичок на форуме
Отправить личное сообщение для en-k Посмотреть профиль Найти все сообщения от en-k
 
Регистрация: 13.03.2011
Сообщений: 3

Отбой, нашел эллетенты через GetEllementByID
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Некорректная работа скрипта defond Серверные языки и технологии 15 24.01.2011 18:07
jquery 1.4.2 + jquery.form: разное поведение ajaxSubmit в разных браузерах dmitry87 jQuery 3 30.10.2010 02:01
Некорректная работа ф-ции Dimonya Events/DOM/Window 7 15.04.2010 14:12
Работа скрипта в разных браузерах estonec Internet Explorer 5 24.03.2010 13:39
Некорректная работа lightwindow в ie6,7,8 nastya Internet Explorer 1 20.11.2009 07:52