[JavaScript] Вызов функции.

2354570

Есть функция, в которой несколько switch-ей определяют возвращаемое значение. Функция принимает три параметра, они и проверяются.
Если явно передать функции, скажем, func(2, 0, 1) - всё работает.
Если передать переменные, которые в момент создания забирают значения некоторых селектов, например var x = document.myform.sel.value, то switch-и не срабатывают, хотя отладочная печать показывает, что значения те же.
В чём причина?

kruzer25

Код в студию.
По вот этому:
сли передать переменные, которые в момент создания забирают значения некоторых селектов
почти ничего не понять.

2354570

почти ничего не понять.
Открыв глаза пошире, можно увидеть код инициализации переменной. Потом она банально передаётся в вызываемую функцию.

kruzer25

Ты не ответил на вопрос.
Ты написал что-то типа "вот я написал тут инициализацию, тут передаю код такой-то функции, а функция в таких случаях работает, а в таких - нет, помогите".
Информации, по которой можно было бы о чём-то понять, практически нет.
Неужели сложно привести:
1) Код вызова функции;
2) Саму функцию.

skvoria

<to moderators>
Модеры, простите меня...
</to moderators>
Бля, я ебал такую постановку вопроса.
Вот у меня тоже код, с твоей любимой инициализацией:
<form name="m">
<select name="s">
<option value="1">ffsdf
<option value="2">ffsdf
<option value="3">ffsdf
</select>
</form>
<script>
function f( v ) {
switch( v ) {
case '1': alert('1');
break;

case '2': alert('2');
break;

case '3': alert('3');
break;
}
}
var a = document.forms.m.s.value;
f( a );
</script>
И все работает.
Так что либо запости код, либо проверь /dev/hands и в особенности /dev/head.
Без обид.

bobby

А я позволю себе немного пофантазировать.
Мне кажется, что у тебя в case'ах написаны числа (1, 2, 3 а не строки ('1', '2', '3' а document.myform.sel.value имеет строковый тип, поэтому ничего и не работает =)
Отладочная печать выводит число 2 и строку "2" одинаково, разумеется.

skvoria

Зачот.
Скорее всего, ты прав.
Угога, телепаты на форум.локал.

kruzer25

Попробуй запустить вот это:
<script language="Javascript"><></SCRIPT>

artimon

artimon

davidko

в жабаскрипте типизация хоть и размытая, но она всё же есть, так что подозреваю, что мадкроз прав.

bobby

<script type='text/javascript'>
<>
</script>

2354570

Мадкроз прав, проблема решена, размытой типизации Жабаскрипта незачот, креатив не тормозить - фантазируйте дальше!
Оставить комментарий
Имя или ник:
Комментарий: