Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   как передать значение из одного скрипта во второй (https://javascript.ru/forum/misc/28032-kak-peredat-znachenie-iz-odnogo-skripta-vo-vtorojj.html)

eidicon 04.05.2012 19:15

как передать значение из одного скрипта во второй
 
Доброго всем времени суток!
Недавно начал изучение javascript, и собственно меня интересует такой вопрос:возможно ли передать значение из одного скрипта в другой?
пример:

<scrpit>
var a = [1,g,46];
</script>
<script>
var b= a[2];
</sript>

То есть необходимо из второго скрипта увидеть переменную которая объявлена в первом.

Раед 04.05.2012 19:22

eidicon,
Все скрипты на одной странице связаны. Ваш код будет работать и ничего дополнительно делать не нужно

P.S. Только в 1-ом скрипте g по-моему в кавычки взять надо

eidicon 04.05.2012 19:56

первый пример не совсем показывает то что нужно, прошу прощения. Точнее будет вот так:
<script>
function confNum()
{
var sDate = $('#startDate').val();
var eDate = $('#endDate').val();
$.get("test2.php",{sDate:sDate, eDate:eDate}, onAjaxSuccess);

function onAjaxSuccess(data)
{
alert(data);
retVal = data.split("_");
for(var i = 0; i < retVal.length; i++) alert(retVal[i]);
}
}
</script>
<script>
var b=retVal[1];
document.write (b);
</script>

получаю ответ:

retVal is not defined
[Прерывать на этой ошибке]

var b=retVal[1];

9xakep 04.05.2012 19:59

Вряд ли ошибка в этом, но все же попробуйте так:
<script>
var retVal;
function confNum()
{
var sDate = $('#startDate').val();
var eDate = $('#endDate').val();
$.get("test2.php",{sDate:sDate, eDate:eDate}, onAjaxSuccess);

function onAjaxSuccess(data)
{
alert(data);
retVal = data.split("_");
for(var i = 0; i < retVal.length; i++) alert(retVal[i]);
}
}
</script>
<script>
var b=retVal[1];
document.write (b);
</script>

eidicon 04.05.2012 20:06

и так пробовал, ошибка та же.

9xakep 04.05.2012 20:18

eidicon,
что приходит от сервера?

vadim5june 04.05.2012 20:20

второй скрипт должен так выглядеть
<script>
function rval(r){
var b=r[1];
document.write (b);
}
</script>
а в первом надо после alert(retVal[i]); добавить
rval(retVal)

eidicon 04.05.2012 20:22

2 числа, но после запроса, возможно в этом причина. хотя тогда должно выводить undefined вместо значения, так как оно ещё не было получено.

eidicon 04.05.2012 20:28

vadim5june,
спасибо помогло.

vadim5june 04.05.2012 20:30

у вас и выводило retVal is not defined
потому что еще ответ с сервера не пришел


Часовой пояс GMT +3, время: 16:53.