Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Глюк FireFox'а

514
22 ноября 2007 года
swordholder99
165 / / 11.12.2006
Ребята у меня Fire Fox глючить ни как javascript ом не удается проверить введенные данные формы. На остальных броузерах работает именно на Файр Фоксе не работает. Версия Файр фокса 2.0.0.9
Скажем есть у нас форм
<form name='my_form' onsubmit="return CheckFields();">
<input type=text name='my_text'>
</form>

И есть жаба скрипт проверяющий введенность полей
<script>
function CheckFields()
{
if (my_form.my_text.value=='')
return false;
else return true;
}
</script>
4
22 ноября 2007 года
mike
3.7K / / 01.10.2002
Использует document.getElementById() вместо "my_form.my_text.value". И будет тебе кросс-браузерный JavaScript.
514
22 ноября 2007 года
swordholder99
165 / / 11.12.2006
Не-а не помогает
12
22 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: swordholder99
Не-а не помогает


Ну так ID на элемент кто вещать будет-то? Данная функция из DOM API под JavaScript работает даже в очень старых версиях браузеров.

12
22 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Код:
<html>
<head>
<script languge="JavaScript">
function foo() {
alert(document.getElementById('text_fild').value)
}
</script>
</head>
<body>
<form name="Form_1" action="" method="POST">
<input type="text" id="text_fild"><br>
<input type="button" value="Push ME!" &#111;&#110;click="foo()">
</form></body>
</html>
514
22 ноября 2007 года
swordholder99
165 / / 11.12.2006
Нет ID то я указываю я имел в виду этот метод тоже не помогает
514
22 ноября 2007 года
swordholder99
165 / / 11.12.2006
Теперь я понял причину ребята
Надо было оказывается id указывать а не name

к примеру <input type=text name='my_text'> [COLOR="Red"]НЕ БУДЕТ РАБОТАТЬ[/COLOR] (на файр фоксе)

в то время как <input type=text id='my_text'>[COLOR="SeaGreen"]РАБОТАЕТ[/COLOR] (на всех броузерах)
514
22 ноября 2007 года
swordholder99
165 / / 11.12.2006
Просьба запомнить этот глюк файр фокса.
А то этот глюк кому то может здорово жизнь усложнить в неожиданное время...
12
22 ноября 2007 года
alekciy
3.0K / / 13.12.2005
__________
Цитата: swordholder99
Теперь я понял причину ребята
Надо было оказывается id указывать а не name


Цитата:
Нет ID то я указываю


:D

12
22 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: swordholder99
Просьба запомнить этот глюк файр фокса.
А то этот глюк кому то может здорово жизнь усложнить в неожиданное время...


Ну нифига се... "а мужики то и не знают!" (с) :D

К сведению, это не глюк, а нормальное и правильное поведение с точки зрения DOM. Так что открыл ты велосипед.

Кстати почитай документацию на W3C, ну и сюда загляни http://developer.mozilla.org/ru/docs/JavaScript что бы еще у тебя не возникли какие либо откровения.

514
23 ноября 2007 года
swordholder99
165 / / 11.12.2006
Может для кого то и не откровения но эта проблема существует только с файр фоксом. Разве это можно назвать "Нормальным поведением" ?
12
23 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Можно. Документацию чаще читай.
15K
23 ноября 2007 года
hel
78 / / 10.11.2007
[html]<script>
var string;
function call_helloWorld(string){
var ResponseText=Ajax.call('', 'ajaxcall_hello_world', string);
document.getElementById("puthere").innerText=ResponseText;
}
</script>
<button onclick='call_helloWorld("Me")'>Hello world</button>
<hr>Result:
<div id="puthere"></div>[/html]

Это кусочек проверочного скрипта, который использует мой ajax фреймворк. Всё бы ничего, да вот мозилла (2.0) мозги парит. Ну не хочет она в puthere записывать ResponseText (он содержит строку "Hello world, from Me."), ну никак... И ничего не понятно, изза чего это. Однако по alert(ResponseText) или по document.write(ResponseText) всё показывается на ура... Ума не приложу, что ему ещё надо.
Вот в опере и ие всё путём... Никаких нареканий.
Помогите, товаресчи... :(
251
23 ноября 2007 года
SkyMаn
1.7K / / 31.07.2007
Цитата: hel
[html]
document.getElementById("puthere").innerText=ResponseText;
[/html]


Дык я удивляюсь, как еще в Опере пашет (ох уже эта Опера...)
Попробуйте так:
[html]
document.getElementById("puthere").innerHTML=ResponseText;
[/html]

Цитата: alekciy
Документацию чаще читай.


hel, то же самое хочется сказать и вам. Прогуляйтесь тут: http://www.w3schools.com/htmldom/prop_anchor_innerhtml.asp

15K
23 ноября 2007 года
hel
78 / / 10.11.2007
SkyM@n:
Спасибо добр-человек. ;)

Я раньше всегда innerText пользовался, в книге какой-то прочитал, что так надо. А об innerHTML никогда даже не догадывался, только узнал. :)
12
23 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: SkyM@n
Дык я удивляюсь, как еще в Опере пашет (ох уже эта Опера...)


Э, но-но! Пропрошу Оперу не обижать, отличный браузер у которой некоторые производители поучились бы поддежку W3C делать.

12
23 ноября 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: hel
SkyM@n:
А об innerHTML никогда даже не догадывался, только узнал. :)


Ну вот DOM спецификация и почитай ;)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог