Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

vise dinamickih comboa????KAKO

[es] :: Javascript i AJAX :: vise dinamickih comboa????KAKO

[ Pregleda: 1794 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

pajko111
pajko111
Stariji vodnik po ugovoru u penziji,
dobrovoljnoj
Pancevo

Član broj: 89073
Poruke: 33
212.200.115.*

Sajt: www.vuleticd.com


Profil

icon vise dinamickih comboa????KAKO06.06.2007. u 11:00 - pre 205 meseci
Ovako stoje stvari.
Na php stranici imam formu i u njoj combo boxove za izbor kategorija.
Potrebno mi je da kad korisnik izabere glavnu kategoriju,da se drugi combo automatski promeni da prikazuje samo podkategorije izabrane glavne kategorije,kad se izabere drugi combo da se promeni treci.......
Ja sam uspeo ovo da dobijem za prva dva comboa ali nece da radi za ostale.
Evo kodova:
Ovo su comboi:

Code:

<select name="maintag" id="maintag" onchange="showUser(this.value)">
</select>
<select name="subtag" id="maintag" >   <!--Znaci ovde bi trebalo isto onchange event ali da popunjava ovaj donji combo -->
</select>
<select name="subtag1" id="maintag">
</select>


Ovo je JS:
Code:

var xmlHttp

function showUser(str)

xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 }
var url="get.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function stateChanged() 

if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("subtag").innerHTML=xmlHttp.responseText 
 } 
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
 {
 // Firefox, Opera 8.0+, Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e)
 {
 //Internet Explorer
 try
  {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e)
  {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}

A ovo je php koji daje sadrzaj donjeg comboa:
Code:

<?php
$q=$_GET["q"];

//$con = mysql_connect('localhost', 'root', '1tofast');
//if (!$con)
 //{
// die('Could not connect: ' . mysql_error());
// }

//mysql_select_db("aukcija", $con);
include '../config.php';
$sql="SELECT node.name, (COUNT(parent.name) - (sub_tree.depth + 1)) AS depth
FROM category AS node,
        category AS parent,
        category AS sub_parent,
        (
                SELECT node.name, (COUNT(parent.name) - 1) AS depth
                FROM category AS node,
                        category AS parent
                WHERE node.lft BETWEEN parent.lft AND parent.rgt
                        AND node.name = '$q'
                GROUP BY node.name
                ORDER BY node.lft
        )AS sub_tree
WHERE node.lft BETWEEN parent.lft AND parent.rgt
        AND node.lft BETWEEN sub_parent.lft AND sub_parent.rgt
        AND sub_parent.name = sub_tree.name
GROUP BY node.name
HAVING depth = 1
ORDER BY node.lft;";

$result = mysql_query($sql);
?>
<option style="background-color:#dcdcc3;" value="" selected>-- Select Sub tag--</option>
<?
while($row = mysql_fetch_object($result))
 {

 echo '<option value="'.$row->name.'">'.$row->name.'</option>';
 
 }
echo "</table>";

//mysql_close($con);
?>

U sustini php je uvek isti,samo u js-u se menja vrednost parametra koji se prosledjuje i ime elementa u koji se stavlja rezultat.
Pokusao sam sa jos jednim js-om za drugi combo ali nece.
POmagajte!
Moj kung-fu je bolji od tvog kung-fua.
 
Odgovor na temu

pajko111
pajko111
Stariji vodnik po ugovoru u penziji,
dobrovoljnoj
Pancevo

Član broj: 89073
Poruke: 33
212.200.115.*

Sajt: www.vuleticd.com


Profil

icon Re: vise dinamickih comboa????KAKO07.06.2007. u 07:22 - pre 205 meseci
E pa drugari resio sam pa ako nekom treba isto to evo koda:
Forma:
Code:

<select name="maintag" id="maintag" onchange="showUser(this.value)">
</select>
Sub tag1 : <select name="subtag" id="subtag" width="20" onchange="showUser1(this.value)">
    <option style="background-color:#dcdcc3;" value="" selected>-- Select Sub tag--</option>
    </select>
    Sub tag2 : <select name="subtag1" id="subtag1" width="20" onchange="showUser2(this.value)">
    <option style="background-color:#dcdcc3;" value="" selected>-- Select Sub tag--</option>
    </select>
    Sub tag3 : <select name="subtag2" id="subtag2" width="20">
    <option style="background-color:#dcdcc3;" value="" selected>-- Select Sub tag--</option>
    </select>


JavaScript fajl:
Code:

var xmlHttp

function showUser(str)

xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 }
var url="get.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function showUser1(str)

xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 }
var url="get.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged1 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function showUser2(str)

xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 }
var url="get.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged2 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function stateChanged() 

if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("subtag").innerHTML=xmlHttp.responseText 
 } 
}


function stateChanged1() 

if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("subtag1").innerHTML=xmlHttp.responseText 
 } 
}

function stateChanged2() 

if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("subtag2").innerHTML=xmlHttp.responseText 
 } 
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
 {
 // Firefox, Opera 8.0+, Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e)
 {
 //Internet Explorer
 try
  {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e)
  {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}


A PHP ostaje isti
Ovaj JS verovatno moze i elegantnije da se resi ali meni i ovako fercera.
Moj kung-fu je bolji od tvog kung-fua.
 
Odgovor na temu

[es] :: Javascript i AJAX :: vise dinamickih comboa????KAKO

[ Pregleda: 1794 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.