[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: война с чекбоксом
titovff
помогите пожалуйста.
делаю поиск по дополнительным параметрам.
идея в следующем.
отображаю строчку "поиск по дополнительным параметрам" и чекбокс. при установки галочки открывается еще 3 поля город, бренд, страна производитель, тоже с галочками. при выборе галочки открывается селект и можно выбрать позицию. при убирании галочек данное поле закрывается.
с этим все замечательно

<!-- НАЧАЛО  поиск по дополнительным параметром (город, бренд, производитель) -->
поиск по дополнительным параметрам <input type="checkbox" name="cat_7" onclick="showCat(this);" />
<!--<
a href="#" onclick="openbox('opp'); return false"><FONT color=#000080>хотите воспользоваться дополнительными полями поиска? </FONT> </a> <br />--><br>

<div id="div_cat_7" style="display:none">
<
form id="t2Searchrrr" method="post" action="#">
<
table width="100%" border="0" align="center">
<
tr>
<
td align="center" width="250">город  
<input type="checkbox" name="cat_1" onclick="showCat(this);" />
<
div id="div_cat_1" style="display:none">
</
form >
<
form method="POST" id="tSearchrrr">
<
select id="city" onChange="Pusk5()">
<?
$result = mysql_query("SELECT DISTINCT city FROM catalog ORDER BY city");
$myrow = mysql_fetch_array($result);?>
<option><?=$_SESSION['city']?></option>
<
option value="Все">Все</option>
<? do {
if ($myrow[city]!="") { echo "<option "; if ($myrow[city]==$city) {echo "selected";} echo" value='".$myrow[city]."'>".$myrow[city]."</option>"; }
}

while ($myrow = mysql_fetch_array($result));
?>
</select>
</
form>

</
div>
</
td>
<
td align="center"width="250">бренд  
<input type="checkbox" name="cat_2" onclick="showCat(this);" />
<
div id="div_cat_2" style="display:none">
<
form method="POST" id="tSearchrrr">
<
select id="brend" onChange="Pusk6()">
<?
$res2 = mysql_query("SELECT DISTINCT brend FROM catalog ORDER BY brend");
$myr2 = mysql_fetch_array($res2);?>
<option value="<?=$_SESSION['brend']?>"><?=$_SESSION['brend']?></option>
<? echo "<option>Все</option>";
do {
if ($myr2[brend]!="") echo "<option "; if ($myr2[brend]==$brend) {echo "selected";} echo" value='".$myr2[brend]."'>".$myr2[brend]."</option>";
}
while ($myr2 = mysql_fetch_array($res2));
?>
</select></form>
</
div>
</
td>
<
td align="center"width="250">страна производитель  <input type="checkbox" name="cat_3" onclick="showCat(this);" />
<
div id="div_cat_3" style="display:none">
<
form method="POST" id="tSearchrrr">
<
select id="country" onChange="Pusk7()">
<?
$res3 = mysql_query("SELECT DISTINCT country FROM catalog ORDER BY country");
$myr3 = mysql_fetch_array($res3);?>
<option value="<?=$_SESSION['country']?>"><?=$_SESSION['country']?></option>
<?
echo "<option>Все</option>";
do {
if ($myr3[country]!="") echo "<option "; if ($myr3[country]==$country) {echo "selected";} echo" value='".$myr3[country]."'>".$myr3[country]."</option>";
}
while ($myr3 = mysql_fetch_array($res3));
?>
</select></form>
</
div></td>
</
tr>
</
table>
</
td>
</
tr>
</
table>
</
form>
</
div>
<!--
КОНЕЦ поиск по дополнительным параметром (город, бренд, производитель) -->


<script type="text/javascript">
function showCat(catname){
if(catname.checked)
{document.getElementById("div_"+catname.name).style.display = 'block';
}
else
{document.getElementById("div_"+catname.name).style.display = 'none';}
}

</script>
<
script type="text/javascript" language="javascript">


, но!!!
1) при снятии галочки и соответственно закрытии поля значение переменной не меняется, а надо чтоб менялось на "Все" (т.к. раз клиент закрыл поле, то отбор по нему не производит и значит рассматривает ВСЕ позиции с данным параметром.
2) после обновления страницы она остовалось в том же состоянии что и до обновления, т.е. если клиент выбрал дополнительные параметры (V) и например бренд (V) а сам бренд допустим "антилопа" то после обновления страницы он должен это же и увидеть.
помогите, кто может



Спустя 1 час, 45 минут, 35 секунд (28.08.2010 - 17:20) Romms написал(а):
1. там где прячешь пишеш:
document.getElementById("SelectTag").selectedIndex = 0; // если "всё" в первом ряду поля выбора.
2. Тут немного сложнее, нужна работа с куками! Ищи в нете "JS работа с cookie"

Спустя 2 дня, 15 часов, 20 минут, 1 секунда (31.08.2010 - 08:40) titovff написал(а):
всем!!! вопрос решил очень просто! задаю переменную и при каждам клике на ссылку считаю 1 или 2. если 2 - отображать доп.параметры и значения (использую сессии) если 1, то закрываю доп.параметры и значения = ВСЕ

тема закрыта

Спустя 1 час, 30 минут, 48 секунд (31.08.2010 - 10:11) sergeiss написал(а):
Цитата (titovff @ 31.08.2010 - 09:40)
тема закрыта

Нет, она только начинается smile.gif

Во-первых, переношу тему из "ПХП для знатоков" в "ПХП для начинающих".

А во-вторых, почитай тут http://phpforum.ru/index.php?showtopic=21916. После чего перепиши свой скрипт по-человечески, без "бесовщины-поповщины" smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.