Mam wyszukiwarkę z rozwijanym menu, w którym mogę sobie wybrać w jakiej części mojego serwisu chce wyszukiwac (całość, newsy, forum, baza ofert pracy).
Mam to rozwiązane tak:
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/pl_PL/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
jQuery(document).ready(
function () {
jQuery('#more').click(function(){
if(jQuery(this).hasClass('active')){
jQuery(this).removeClass('active');
jQuery('#search-menu').removeClass('active');
} else {
jQuery(this).addClass('active');
jQuery('#search-menu').addClass('active');
}
});
$('#search li').click(function() {
jQuery('#more').removeClass('active');
jQuery('#search-menu').removeClass('active');
setFormAction(jQuery(this).attr('class'));
jQuery('#search-text').attr('placeholder',jQuery(this).text()).blur();
});
}
)
function setFormAction(choice){
switch(choice){
case 's1':
jQuery('#search').get(0).setAttribute('action', '../search.php');
break;
case 's2':
jQuery('#search').get(0).setAttribute('action', '../search.php?ct=1');
break;
case 's3':
jQuery('#search').get(0).setAttribute('action', '../search.php?ct=2');
break;
case 's4':
jQuery('#search').get(0).setAttribute('action', '../search.php?ct=3');
break;
}
}
</script>
<form id="search" class="search-large" action="../search.php" method="GET">
<input id="search-text" class="search-top" type="text" name="name" placeholder="<?=__('Search')?>" value="" />
<div id="more"></div>
<input id="search-btn" type="image" src="../images/layout/sbutton.png" alt="Go" />
<ul id="search-menu">
<li class="s1"><?=__('Search')?></li>
<li class="s2"><?=__('Search forum')?></li>
<li class="s3"><?=__('Search news')?></li>
<li class="s4"><?=__('Search work')?></li>
</ul>
</form>
parametr ct wskauzje w którym dziale chemy szukac, pusty oznacza, że na całej stronie, 1 to newsy, 2 forum, 3 oferty pracy.
Problem jest aki, że paramter jest ucinany i przekazywana sama nazwa pliku search.php. Zmieniłem z GET na POST, ale wtdy w ogóle już nic nie działało. Jest jakiś sposób by przekazać ten paramter (ct) do forma, w zależności od tego co się wybierze z tego rozwijanego menu?
Ten post edytował Bojakki 9.07.2013, 09:00:18