Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Параметры в функции


Автор: Gik 2.6.2005, 16:07
Я начинающий.
Помогите разобратся. smile
Дана функция, которая вызывается из тела документа.
В этой функции вызывается другая функция, и т.д. несколько раз.
Вопрос. Можно ли "пронести" параметры которые передалиль первой вызванной функции,
конечной?
Заранее спасибо кто откликнулся.

Автор: trix 2.6.2005, 16:20
Код

f(a)
{
...
alert(a);
...
}
f2(a)
{
...
f(a);
...
}
f3(a)
{
...
f2(a);
...
}
f3(1);

что-то типа такого? или я непонял.

Автор: Black 2.6.2005, 16:26
Желательно чтобы вы дали код. Однако предположу что имеется ввиду это:

Код

<html>
<head>
<script>
function oneFunc(one,two)
{
 twoFunc(one,two)
}


function twoFunc(one,two)
{
 alert('Меня звать '+one+'. Я люблю '+two);
}
</script>
</head>

<body onload="oneFunc('Сергей','мороженное')">
</body>

</html>


Думаю разберетесь. Вообщем первая функция получает переменные one и two, а затем передает их второй функции.

Автор: Aliance 2.6.2005, 16:30
Цитата(Gik @ 2.6.2005, 17:07)
параметры

Что под этим подразумевается? Если аргументы - то нет. Они, как и ссылка this не глобальны и индивидуальны для каждой функции.

Автор: GIK 2.6.2005, 16:45
smile Спасибо, прикольно.

На счет аргументов не понял.
Извините за глупость.

М
 

Соблюдай правила форума.

Автор: GIK 2.6.2005, 17:10
А поместить сформировавшуюся фразу в документ ТАК?

Код

<html>
<head>
<script>
function oneFunc(one,two)
{
 var r=twoFunc(one,two)
document.fraza.value=r
}


function twoFunc(one,two)
{
 alert('Меня звать '+one+'. Я люблю '+two);
}
</script>
</head>

<body>
<input type=text name="fraza" value="">
<input type=button value=вычислить onClick="oneFunc(Сергей,Мороженное)">
</body>

</html>


М
 

Используй кнопку Code!
Не стоить пытаться подделать подстветку.
Старайся писать правильно!

Автор: Aliance 2.6.2005, 17:36
GIK
Во-первых, зарегистрируйся на форуме!
Во-вторых, объясни задачу русским языком. Что ты конкретно хочешь сделать и что ты понимаешь под словом “параматры”.

Если тебе нужно сделать так, как показал PHP-DIRECTOR, то зачем вторая функция вообще?

Нет, так неправельно. Передаваемые аргументы нужно заключать в кавычки:
Код

<html>
<head>
<script>
function oneFunc (one,two) {
   twoFunc(one,two)
}
function twoFunc (one,two) {
   document.f1.fraza.value = 'Меня звать '+one+'. Я люблю '+two;
}

</script>
</head>

<body>
<form action="" name="f1">
<input type=text name="fraza" value="">
<input type=button value=вычислить onClick="oneFunc('Сергей','Мороженное')">
</form>
</body>

</html>

Автор: GIK 2.6.2005, 18:22
Спасибо за совет.
Вообщето я хотел чтобы конечная функция (или какая либо другая)просто получила нужные параметры из тела в зависимости от ситуации.
И внезапно мне пришло в голову что все это можно упростить
прописав
r=document.нужная информация.value

где r-оператор
d.НИ.value- нужное значение
Можно ли ссылатся на это.
Или я ощибаюсь.

Автор: Black 2.6.2005, 18:35
r = document.NameForm.NameElementForm.value;

NameForm - имя формы
NameElementForm - имя тега input

Цитата
где r-оператор

r - это будет переменная которой будет присвоенно значение нужного элемента нужной формы

Цитата
Можно ли ссылатся на это.

Да так можно ссылаться на информацию определенного поля определенной формы

Автор: Aliance 2.6.2005, 18:36
Цитата(GIK @ 2.6.2005, 19:22)
d.НИ.value- нужное значение

Не совсем верно. Во-первых, нужно элементы формы ‘положить’ в саму форму и обращаться так:
Код

var elem = document.имяФормы.имяЭлемента.value;


Не стоит игнорировать сообщения об использовании кодов и регистрации на форуме.
Добавлено @ 18:37
Упс, опередили.

Цитата(PHP @ 2.6.2005, 19:35)
NameElementForm - имя тега input

не обязательно smile

Автор: Black 2.6.2005, 18:41
Aliance
Цитата
не обязательно

Согласен. Могут еще быть:

- TEXTAREA
Cоздает поле для ввода нескольких строк текста
- SELECT
Cоздает меню в заполняемой форме
ну и сам
- INPUT
Создает поле в форме

Автор: Sardar 3.6.2005, 02:02
Цитата(Aliance @ 2.6.2005, 15:30)
Если аргументы - то нет.

Я же писал в статье о "Обьектах, прототипах и т.п.", там пример где мы передаём arguments, коллекция со всеми аргументами в функции. Не забываем что в JS нет жёстких деклараций прототипов функций, количество аргументов может быть любым, просто не все будут доступны по именам.

Код
function test() {
  var a=[];
  for(var i=0; i<arguments.length; i++) a[a.length]=arguments[i];
  alert(a.join(", "));
}
test("test", "argument2", "argument3", "vingrad");


Aliance, PHP-DIRECTOR наофтопили smile

Автор: GIK 3.6.2005, 08:20
Aliance, PHP-Director помогите разобратся. smile
Допустим возникла ситуация когда человек который не хочет особо напрягатся в влезать в листинг, но при этом хочет поместить свою фотографию на страничке,
просто вводит имя файла и разрешение (Vasya.gif) в поле формы
и после нажатия кнопки "button" нужно чтобы фотография появилась на страничке.
Можно ли вставить имя в <img src=имя файла>,
или это делается по другому?

Заранее всем спасибо.



Автор: Aliance 3.6.2005, 12:24
Цитата(GIK @ 3.6.2005, 09:20)
Aliance, PHP-Director помогите разобратся.

Давай так, либо ты спрашиваешь у всех, либо пишешь по PM (для этого нужна регистрация).

Затем, прошу в третий раз - прочесть правила и зарегистрироваться! smile

Так это врятли делается, если только канечно фотограция не нах-дя на вашем сайте.
Если нет - то вам в раздел php с вопросом Uploader бинарных файлов;
Если да - то можно. Смотрим http://forum.vingrad.ru/index.php?showtopic=54295&view=findpost&p=430754.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)