Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   php переменная в js (https://javascript.ru/forum/dom-window/37671-php-peremennaya-v-js.html)

exage 30.04.2013 14:10

php переменная в js
 
есть код:

<select id="test" onChange="Selected(this)">
   <option value="0" selected="selected">Выбрать</option>
   <option value="1">-1</option>
   <option value="2">-2</option>
   <option value="3">-3</option>
</select>


<select id="test2">
<?php if($test == '1'){ ?>
<option value="1">--1</option>
<?php } else if($test == '2'){ ?>
<option value="2">--2</option>
<?php } else if($test == '3'){ ?>
<option value="3">--3</option>
<?php } ?>
</select>


function Selected(a) {
	var label = a.value;
	if (label==1) {
		//тут должно записаться $test == '1'
		
		
	} else if (label==2) {
		//тут должно записаться $test == '2'
		
		
	} else if (label==3) {
		//тут должно записаться $test == '3'
		
	
	}
	
}


Если в #test выбрано 1: то показать
<?php if($test == '1'){ ?>
<option value="1">--1</option>
<?php } else if($test == '2'){ ?>

и т.д.

как реализовать? var test = <?php $test = '1';?> - не помогает, будет стоят =3 ( то, что у последней строки)

deivan 30.04.2013 14:27

мне кажется, вы путаете теплое с мягким...

пхп собирается на сервере, жс - на клиенте. если вы хотите из жаваскрипт управлять переменными на сервере, то нужно делать аякс-запрос..

exage 30.04.2013 14:33

А как тогда вывести разные option для select?
В первом select выбирается параметр , взависимости от выбора появляются option во втором ( в первом =1, во втором видим 1,2,3.. в первом =2 , во втором 4,5,6)

Смысл в том, что бы второй селект имел один и тот же id т.к. , менялись только option в нем


Нашел отличный вариант: http://htmlcssjs.ru/JavaScript/?17
НО там value и текст одинаковые, как сделать их разными?
var aHouseValues = new Array(
"12/15 test,18,123",
"2,4",
"2/8,10/12",
"3",
"2,4,12,5/6,8"
);

var newHouseListOption = document.createElement("OPTION");
            newHouseListOption.text = aCurrHouseValues[i];
            newHouseListOption.value = aCurrHouseValues[i];

deivan 30.04.2013 15:01

вы хотите сделать динамические селекты, наполняющиеся на основании предыдущего выбора?..

нужно давать запрос скрипту пхп, он согласно параметрам запроса даст ответ в формате жсон. этот ответ распарсиваем в объект или массив и "на лету" вшиваем в ДОМ.

exage 30.04.2013 19:38

Наверно так, не настолько силен в кодинке.. аналогом является http://speckrepej.ru/calc.php

там первый селект это наименование, второй - размер и инпунт - кол.во.. там считается вес по формуле размер * кол-во,выдрать код не получается..

ruslan_mart 03.05.2013 11:56

<option value="<?=$test?>">--<?=$test?></option>


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