|
|
|
| Autor |
Správa |
beluský Medium Expert


Pohlavie:  Stav:  Založený: 21.09.2006 Príspevky: 138
Karma: 
|
Zaslal: 24 Apr 2008, 19:58 Predmet: menu v PHP a Ajaxe |
|
|
cawte, ako spravit také nieco, aby sa po kliknuti na polozky menu zobrazilo "pod menu" bez reloadnutia stranky... skusal som taketo nieco, ale v Opere to vobec nejde a vo FF som to neskusal...
index.php
| Kód: |
<html>
<head>
<script src="skripty.js"></script></noscript>
</head>
<body>
<div id="menuTovar">
<a value="1" onClick="zobrazMenu(this.value, 0)">Polozka 1</a><br />
<a value="2" onClick="zobrazMenu(this.value, 0)">Polozka 2</a><br />
<a value="3" onClick="zobrazMenu(this.value, 0)">Polozka 3</a><br />
</div>
</body>
</html> |
skripty.js
| Kód: |
var xmlHttp
///////////////////////////////////////////////////////////
function zobrazMenu(level, sub) {
xmlHttp = GetXmlHttpObject()
if (xmlHttp == null) {
alert ("Browser does not support HTTP Request")
return
}
var url="menu.php?level="+level+"&sub="+sub
xmlHttp.onreadystatechange = menu
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
function menu() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
document.getElementById("menuTovar").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;
} |
menu.php
| Kód: |
<?php
$level = $_GET["level"];
$sublevel = $_GET["sub"];
$html = '<a value="1" onclick="zobrazMenu(this.value, 0)">Polozka 1</a><br />';
switch($level) {
case 1 :
$html .= '<a value="1" onclick="zobrazMenu(1, this.value)"> sub1</a><br />
<a value="2" onclick="zobrazMenu(1, this.value)"> sub2</a><br />
<a value="3" onclick="zobrazMenu(1, this.value)"> sub3</a><br />';
$html .= '<a value="2" onclick="zobrazMenu(this.value, 0)">Polozka 2</a><br />';
$html .= '<a value="3" onclick="zobrazMenu(this.value, 0)">Polozka 3</a><br />';
break;
case 2 :
$html .= '<a value="2" onclick="zobrazMenu(this.value, 0)">Polozka 2</a><br />';
$html .= '<a value="1" onclick="zobrazMenu(2, this.value)"> sub1</a><br />
<a value="2" onclick="zobrazMenu(2, this.value)"> sub2</a><br />
<a value="3" onclick="zobrazMenu(2, this.value)"> sub3</a><br />';
$html .= '<a value="3" onclick="zobrazMenu(this.value, 0)">Polozka 3</a><br />';
break;
case 3 :
$html .= '<a value="2" onclick="zobrazMenu(this.value, 0)">Polozka 2</a><br />';
$html .= '<a value="3" onclick="zobrazMenu(this.value, 0)">Polozka 3</a><br />';
$html .= ' <a value="1" onclick="zobrazMenu(3, this.value)"> sub1</a><br />
<a value="2" onclick="zobrazMenu(2, this.value)"> sub2</a><br />';
break;
}
echo $html;
?> |
|
|
| Návrat hore |
|
 |
audiotrack Moderátor


Pohlavie:  Stav:  Založený: 09.09.2005 Príspevky: 6447 Bydlisko: Prievidza Karma: 
|
Zaslal: 24 Apr 2008, 20:12 Predmet: |
|
|
videl si niekedy, že by hypertextový odkaz mal value? Stačilo si pozreť na akú url sa posiela požiadavok, a zistil by si že hladá stránku menu.php?level=undefined&sub=0
Odkazy musíš spraviť takto:
| Kód: |
<a onClick="zobrazMenu(1, 0)">Polozka 1</a><br />
<a onClick="zobrazMenu(2, 0)">Polozka 2</a><br />
<a onClick="zobrazMenu(3, 0)">Polozka 3</a><br /> |
|
|
| Návrat hore |
|
 |
gwixt Addict


Pohlavie:  Stav:  Založený: 24.09.2005 Príspevky: 3090 Bydlisko: Trash-Can Karma: 
|
Zaslal: 25 Apr 2008, 11:00 Predmet: |
|
|
na ajax pouzi nejaky framework (xajax napr) .. tam mas aku taku zaruku ze ti to bude fungovat v prehliadacoch (nejakom urcite ) |
|
| Návrat hore |
|
 |
beluský Medium Expert


Pohlavie:  Stav:  Založený: 21.09.2006 Príspevky: 138
Karma: 
|
Zaslal: 25 Apr 2008, 13:40 Predmet: |
|
|
| uz to funguje, vážne mu vadilo to value |
|
| Návrat hore |
|
 |
|
|  |
|
|
Nemôžete odosielať nové témy do tohto fóra Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre Nemôžete hlasovať v tomto fóre Nemôžete pripájať súbory do tohto fóra Môžete sťahovať súbory v tomto fóre
|
Powered by phpBB © 2005 phpBB Group, phpBB SEO, © Hojko 2004-2008
[ Vygenerované za: 0.1s ] :: [ 16 Queries ] :: [ 8,075 stránok za dnes ] :: [ Dnes DB: 146,376 ] :: [ Max DB: 2,334,336 Queries ]
|