Hi,
Here I am having a dropdown named Category and another drop down named Sub category.There is one text box named zipcode which is filled with the previous request page.What happens is when I select any category the onchange event fires and a list of cars gets displayed.But parallely the zipcode text box gets blank.
What I want is I dont want the text box value to be blank on drop down change event.
I guess this happens because on change event the page gets refresh.
<?
include "config.php";
$vc = $_GET['vc'];
$zip = $_GET['zip'];
?>
<html>
<head>
<style>
<!--
.dragme{position:relative;}
-->
</style>
<script language="javascript" src="list.js"></script>
<link href="cars.css" rel="stylesheet" type="text/css" />
<script>
<?
echo "
function fillCategory(){
// this function is used to fill the category list on load
";
//For Category
$q1=mysql_query("select * from jos_categories where section='com_vehiclemanager'");
echo mysql_error();
while($nt1=mysql_fetch_array($q1)){
echo "addOption(document.form1.Category, '$nt1[id]', '$nt1[title]', selected='selected');";
}
// For model
$model=mysql_query("select * from jos_vehiclemanager_vehicles");
echo mysql_error();
while($mo=mysql_fetch_array($model)){
echo "addOption(document.form1.SubCat, '$mo[id]', '$mo[vmodel]', selected='selected');";
}
// end of while
?>
} // end of JS function
function SelectSubCat(){
// ON or after selection of category this function will work
removeAllOptions(document.form1.SubCat);
addOption(document.form1.SubCat, "", "SubCat", "");
// Collect all element of subcategory for various cat_id
<?
//let us collect all cat_id and then collect all subcategory for each cat_id
$q2=mysql_query("select distinct(catid) from jos_vehiclemanager_vehicles");
// In the above query you can collect cat_id from category table also.
while($nt2=mysql_fetch_array($q2)){
//echo "$nt2[cat_id]";
echo "if(document.form1.Category.value == '$nt2[id]'){";
$q3=mysql_query("select vmodel from jos_vehiclemanager_vehicles where catid='$nt2[catid]'");
while($nt3=mysql_fetch_array($q3)){
echo "addOption(document.form1.SubCat,'$nt3[catid]', '$nt3[vmodel]');";
} // end of while loop
echo "} ";
}
?>
var w = document.form1.Category.selectedIndex;
var v = document.form1.Category.options[w].value;
self.location = "index.php?option=com_content&view=article&id=58&Itemid=56&vc=new&v=" +v;
}
function removeAllOptions(selectbox)
{
var i;
for(i=selectbox.options.length-1;i>=0;i--)
{
//selectbox.options.remove(i);
selectbox.remove(i);
}
}
function addOption(selectbox, value, text)
{
var optn = document.createElement("OPTION");
optn.text = text;
optn.value = value;
selectbox.options.add(optn);
}
function fillmodel()
{
var val=document.form1.SubCat.selectedIndex;
var m= document.form1.SubCat.options[val].value;
self.location = "index.php?option=com_content&view=article&id=58&Itemid=56&vc=new&m="+m;
}
function fillprice()
{
var val=document.form1.price.selectedIndex;
var p = document.form1.price.options[val].value;
self.location = "index.php?option=com_content&view=article&id=58&Itemid=56&p="+p;
}
function getzipcode()
{
var zip = document.getElementById("zipcode").value;
self.location ="index.php?option=com_content&view=article&id=58&Itemid=56&zip="+zip;
}
</script>
</head>
<body onLoad="fillCategory();">
<table width="70%" cellpadding="0" cellspacing="5" class="table-border" border="1">
<tr>
<td colspan="3" align="left"><img src="images/stories/clearance_tab_new_off.gif" /><img src="images/stories/clearance_tab_used_off.gif" /><img src="images/stories/clearance_tab_deal_off.gif" width="157" height="26" /><span style="padding-left:200px">Your zip code
<input type="text" name="zipcode" id="zipcode" value="<? echo $zip; ?>" size="2" onChange="getzipcode()">
<a href="#" onClick="showzipcode();"><script language="JavaScript">document.write(zipcode)</script>change</a>
</span> </td>
</tr>
<tr>
<td colspan="3" style="background-repeat:repeat-x">Top new car bargains in your area</td>
</tr>
<tr>
<td width="33%" colspan="0" class="clearancelot-subtable" style="background-repeat:repeat-x"><table width="100%" border="0" cellpadding="0" cellspacing="0" class="clearancelot-subtable">
<tr>
<td align="center" class="clearancelot-td-text">MSRP Range: $10,000-$65000</td>
</tr>
<tr>
<td style="background-repeat:repeat-x;">
<form id="form1" name="form1" method="post" action="">
<p align="center">
<select name="price" onChange="fillprice();">
<option value="" >Select price</option>
<option value="10000">$10000</option>
<option value="15000">$15000-$65000</option>
<option value="20000">$20000-$65000</option>
<option value="25000">$25000-$65000</option>
<option value="30000">$30000-$65000</option>
<option value="35000">$35000-$65000</option>
<option value="40000">$40000-$65000</option>
<option value="45000">$45000-$65000</option>
<option value="50000">$50000-$65000</option>
<option value="55000">$55000-$65000</option>
<option value="60000">$60000-$65000</option>
<option value="65000">$65000</option>
</select>
</p>
</td>
</tr>
</table></td>
<td width="40%"><table width="100%" border="0" cellpadding="0" cellspacing="0" class="clearancelot-subtable">
<tr>
<td class="clearancelot-td-text">Search By Make</td>
</tr>
<tr>
<td>
<p align="center">
<select name="Category" tabindex="1" onChange="SelectSubCat();">
<option value="">Select Category</option>
</select>
</p>
</td>
</tr>
</table></td>
<td width="27%" class="clearancelot-subtable"><table width="100%" border="0" cellpadding="0" cellspacing="0" class="clearancelot-subtable">
<tr>
<td class="clearancelot-td-text">Search By Model</td>
</tr>
<tr>
<td>
<p align="center">
<select name="SubCat" id="SubCat" tabindex="1" onChange="fillmodel();">
<option value="">Select Model</option>
</select>
</p>
</td>
</tr>
</table></td></form>
</tr>
<tr>
<td colspan="3" align="center" bgcolor="#CCCCCC" >
<table border="0" cellpadding="0" cellspacing="5" >
<tr>
<td>
<?
$v = $_GET['v'];
$m = $_GET['m'];
$p = $_GET['p'];
echo $price;
$i = 1;
if($zip > 0)
{
$query = mysql_query("select id, catid, image_link from jos_vehiclemanager_vehicles
where vlocation REGEXP '".mysql_real_escape_string($zip)."' ");
}
if($v == 0 && $m == 0)
{
$query = mysql_query("select id, catid, image_link from jos_vehiclemanager_vehicles
where vcondition='".$vc."' ");
}
if($v > 0)
{
$query = mysql_query("select id, catid,image_link from jos_vehiclemanager_vehicles
where catid='".$v."' and vcondition='".$vc."' ");
}
if($m > 0)
{
$query = mysql_query("select id, catid,image_link from jos_vehiclemanager_vehicles
where id='".$m."' and vcondition='".$vc."' ");
}
if($p == 10000)
{
$query = mysql_query("select id, catid, image_link
from jos_vehiclemanager_vehicles
where price < 10000 ");
}
else
{
if($p > 10000 && $p < 65000)
{
$query = mysql_query("select id, catid, image_link, price
from jos_vehiclemanager_vehicles
where price between '".$p."' and 65000");
}
}
echo '<table border="0" cellspacing="30" cellpadding="0" bgcolor="#FFFFFF">'
.'<tr>';
while($row=mysql_fetch_array($query))
{
echo '<td>'
.'<a href="index.php?option=com_vehiclemanager&task=view&id='.$row['id'].'&catid='.$row['catid']. '&Itemid=55" >'
.'<img src="components/com_vehiclemanager/photos/'.$row[ 'image_link'].'" width="142" height="73" class="image"/>'
.'</a>'.$row['price']
.'</td>';
if($i%4 == 0)
{
echo '</tr>'
.'<tr>';
}
$i++;
}
echo '</table>';
?> </td>
</tr>
</table> </td>
</tr>
</table>
</body>
</html>
<script>
function showzipcode()
{
var zipcode = prompt("Enter your zip code");
}
</script>
Please help,
Thanks in advance