Автор Тема: конкатенация в JS  (Прочитано 6360 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ast-ross

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
конкатенация в JS
« : 06 Октября 2006, 14:22:46 »
помогите чет никак не выходит!!!

есть функция


function my_funct (form_and_field) {
 var cur_date=\'document.\' + form_and_field + \'.value\';
 alert (cur_date);
 }


есть форма my_form и текстовое поле my_date
и ссылка:


link


Alert выдает текстом document.my_form.my_date.value
А надо значение которое в этом поле...

если в функцции вручную указать var


cur_date=document.my_form.my_date.value;


то все прекрасно работает... Я понял что я превратил переменную в текст но не въеду как правильно конкотинировать...

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
конкатенация в JS
« Ответ #1 : 06 Октября 2006, 14:57:33 »
Все правильные подтсаны делают это через document.getElementById или похожие вещи, а не через такую жопу.

Оффлайн ast-ross

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
конкатенация в JS
« Ответ #2 : 06 Октября 2006, 15:41:02 »
ну а как сделать? дело в том что у меня на одной странице может быть несколько форм и несколько полей как мне передавать в функцию и значение и имена формы и поля?

Оффлайн html_coder

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 427
  • +0/-0
  • 0
    • Просмотр профиля
конкатенация в JS
« Ответ #3 : 06 Октября 2006, 16:04:23 »
ast-ross

Опиши что тебе нужно сделать, задачу изложи вообщем!

Оффлайн ast-ross

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
конкатенация в JS
« Ответ #4 : 07 Октября 2006, 08:32:53 »
Ладно начнем по порядку:

Задача: Написать всплывающий календарь для заполнения текстового поля преднозначенного для даты. Значит к примеру, имеем некую форму form_1 и некое поле field_1 рядом с полем распологаеться иконка календарика при клике на которую становиться видимым iframe в который через src загружаеться calendar.php в этот календарь надо методом GET передать имя формы, имя поля и текущее значение поля для прокрутки календаря на эту дату т.е. src=./calendar.php?form=form_1&field=field_1&date=07.10.2006 В calendar.php дата нужда для прокрутки календаря на эту дату а имена формы и поля для того что бы по событию onclick переписать значение поля на ту дату по которой кликнули и следом скрыть iframe
Так вот для того чтобы оформировать этот URL для calendar.php я создаю некую js-функцию calendar() а на икону вешаю my_img_icon

Теперь о функции. Ну вот она приняла имена формы и полей а для формирования url для src мне надо еще и value которое в этом поле этой формы. Кстати а как из этой функции переписать этот src для iframe? После этого iframe делаеться видимым и производиться его абсолютное позиционирование согласно принятого this

Ну в общем такая вот фигня...

Вопросы:
1. Как в функции calendar() получить значение value зная имя формы и поля
2. Как переписать src для iframe
3. Как передать из iframe в родителя значение для поля формы
4. Как из iframe передать родителю сделать этот же iframe невидимым

Извините за токое количество вопросов JS занялся только на этой неделе...
« Последнее редактирование: 07 Октября 2006, 08:43:46 от ast-ross »

Оффлайн ast-ross

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 23
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
конкатенация в JS
« Ответ #5 : 07 Октября 2006, 10:53:44 »
Все! Все написал все работает! все сделал через document.getElementById

Если кому надо могу дать исходники

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
конкатенация в JS
« Ответ #6 : 10 Октября 2006, 09:32:53 »
[m] OMG...
Тема закрыта, раз всем всё ясно.
LJ: Backslashed life (rss)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28