2009-04-12 4 views
1

Могу ли я получить доступ к значению в яваскрипта функции из-за пределов функции , как если бы я имел функциюДоступ к значению функции javascript в PHP?

<script> 
function test_tree(opt) 
{ 
    val = opt; 
} 
</script> 

Могу ли я получить доступ к значению val из-за пределов функции test_tree или есть способ получить к нему доступ из PHP код?

Мне нужно иметь доступ к значению из кода javascript в PHP-коде.

+0

Возможный дубликат [Передача строки PHP в Javascript-переменную (включая экранирование строк)] (http://stackoverflow.com/q/168214/), [Как передать переменную/данные из javascript в php и vice versa?] (http://stackoverflow.com/q/406316/90527) и многие другие (в зависимости от того, что именно просит jarus). – outis

ответ

1

Установите значение в скрытое поле и прочитайте скрытое поле в своем серверном коде.

<input type="hidden" id="myVariable"> 

В функции:

document.getElementById('myVariable').value = val; 
4

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

Ответ на ваш вопрос, хотя, если вы хотите, чтобы переменные, созданные внутри функции, существовали за пределами срока службы функции, используйте закрытие. Вы можете передать переменную некоторому объекту, доступному вне функции, которая имеет задание хранить кучу этих значений.

Если вы хотите, чтобы переменная (созданная на JavaScript и, следовательно, я предполагаю, что на клиенте) была доступна для вашего исходного кода PHP, вам придется отправить запрос на ваш сервер. Вероятно, вызов ajax, если это выполнение не является частью отправки формы.

Смежные вопросы