Показать сообщение отдельно
  #1 (permalink)  
Старый 13.07.2011, 16:42
Аспирант
Отправить личное сообщение для Amateur Посмотреть профиль Найти все сообщения от Amateur
 
Регистрация: 07.03.2010
Сообщений: 88

Почему JS не срабатывает если параметр задан двуми словами?
Здравствуйте. Столкнулся с проблемой.
Проблема в том, что если
$SELL_CAT_HOUSEWARE = "Домашняя утварь";

то код не работает (не появляется подкатегория),
а если
$SELL_CAT_HOUSEWARE = "Домашняяутварь";

//если одним словом
то код работает.
Подскажите в чем ошибка и как ее можно исправить?

Код:

<?php
$SELL_CAT_SUNDRY = "Разное";
$SELL_CAT_HOUSEWARE = "Домашняя утварь"; 
$SELL_CAT_STATIONERY = "Канцтовары";
	?>

<script type="text/javascript">
var podcatArray = {
	<?php echo $SELL_CAT_SUNDRY;?> : {<?php echo $SELL_CAT_HOUSEWARE;?>:"<?php echo $SELL_CAT_HOUSEWARE;?>",<?php echo $SELL_CAT_STATIONERY ;?>:"<?php echo $SELL_CAT_STATIONERY ;?>"},
	ChevroletCorvette : {black:"Черный",blue:"Синий"},
	FerrariEnzo : {green:"Зеленый",black:"Черный",yellow:"Желтый"}
}

function getpodcat(_this){
	var podcat = podcatArray[_this.value];
	var _select = document.getElementById("podcat");
	_select.innerHTML = ""; // Удаляем всех потомков.
	for(var i in podcat){ // Добавляем доступные цвета.
		var option = document.createElement("option");
		var optionText = document.createTextNode(podcat[i]);
		option.appendChild(optionText);
		option.setAttribute("value",i);
		_select.appendChild(option);
	}
	_select.style.display="inline";
}
</script>
</head>
<body>
<form action="index.php" method="get">
<fieldset>
<legend><label for="models">Модели</label></legend>
<select id="cat" name="cat" onchange="getpodcat(this)">
<option value="<?php echo $SELL_CAT_SUNDRY;?>"><?php echo $SELL_CAT_SUNDRY;?></option>
	<option value="ChevroletCorvette">Chevrolet Corvette</option>
	<option value="FerrariEnzo">Ferrari Enzo</option>
</select>
</fieldset>
<fieldset>
<legend>
<label for="podcat">Подкатегория</label></legend>
<select id="podcat" name="podcat"></select>
</fieldset>
<fieldset>
	<input type="submit" value="Выбрать" />
</fieldset>
</form>

Последний раз редактировалось Amateur, 13.07.2011 в 16:44.
Ответить с цитированием