Просмотр полной версии : передача параметров в JavaScript
Как передать параметр из одного документа в другой?
имеется HTML в скрипте указывается, например:
var M=5
далее по сценарию, должно выполниться обновление в соседнем фрейме загруженного документа.
При его загрузке, должен выполниться сценарий, ход которого зависит от значения переменной M.
Но при загрузке документа, появляется сообщение, что переменная не определена.
Создай текстовое поле в основном документе....и заноси туда значение М...:) А в его Style поставь Visibility:Hidden.....вроде так пишется....:)Потом при загрузке проверяй значение этого поля...window.<ID или NAME фрейма....того где поле>.<ID или NAME поля>и т.д.....:) пока больше ничего в голову не приходит........теоретически, это должно работать...:)
Да нашёл я пример в доках, как параметры из формы через атрибут ACTION передавать.
Только както это всё через....:idontnow: , сложно уж через чур.
Неужели нельзя проще передать параметр, как в функции, например, или описав как Глобальную переменную???
Делай как есть....узнаешь как лучше..переделаешь...:)
вот и хотелось бы сразу, как лучше, а не через....:confused:
Может кто знает как всёже это делается по человечески???
Просто так прочитать переменную тебе вряд ли удастся, это из соображений безопасности. Ведь если ты сможешь прочесть эту переменную, то сможешь прочесть и переменные окружения, а оперециями присваивания сможешь писать в них :smile:.
Как понимаешь, этого не могли допустить:smile:. Но всеже, если найдешь способ - дай знать, плизз...
helldomain
13.05.2002, 12:34
Okaziwaetsya mojno.
U tebya est index.html s razbiwkoi na freimi (Frm_1 i Frm_2).
w frm1.html
sledujushij kod:
<Script Language="JavaScript">
var ValueToTransfer='Ofiget mojno';
</Script>
Teper kak poluchit eto delo iz frm2.html:
<Script Language="JavaScript">
alert(parent.Frm_1.ValueToTransfer);
</Script>
Uchti tolko, chto k tomu wremeni kogda 2oi skript wipolnyaetsya, perwij uje doljen bit gotov. Wot uluchenij variat wtorogo skripta:
<Script Language="JavaScript">
if (parent.Frm_1.ValueToTransfer != null)
alert(parent.Frm_1.ValueToTransfer);
</Script>
Сенкс, helldomain:dance:
Всё работате!!!!
helldomain
13.05.2002, 19:46
Smotri, esli ti neuveren w zagruzke funkcij, sdelai tak.
dlya Frm_1:
function InitFrm_2()
{
if (parent.Frm_2.MyFunc != null)
parent.Frm_2.MyFunc(A, B, C);
else window.setTimeout('InitFrm_2();', 1000);
}
Uchti, rabotaet ot IE 4.0.741 i Netscape ot 4.0.0.6
Privetow
Большое спасибо! По идее все просто...
helldomain
15.05.2002, 16:54
LOL. A wse ono prosto i est.
Чегото не придумаю...
А вот как сделать, чтобы, в зависимости от значения переменной - по гиперссылке в соседний фрейм загружался соответствующий значению переменной документ?
В "href=" условный оператор ведь не вклинить?
может выполнять в <BODY onload=...> загружаемого фрейма какую-либо функцию??? ... наверное это не лучшее решение.
helldomain
15.05.2002, 19:15
Podojdi. Ti hochesh iz perwogo freima wo wtorom otkriwat drugoi dokument.
Scenarij 1:
Frm_1:
parent.Frm_2.MyVar=1;
parent.Frm_2.OpenCorrespondingLocation();
Frm_2:
var MyVar=new Number();
function OpenCorrespondingLocation()
{
switch (MyVar)
{
case 0:{
location.href='http://www.chto-to.com';
break;
}
case 1:{
location.href='http://www.chto-to_drugoe.com';
break;
}
}
}
Scenarij 2:
Frm_1:
parent.Frm_2.location.href='http://a.eto.woobsche.chto-to.com';
vBulletin® v3.8.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.