PDA

Prikaži potpunu verziju : Prosledjivanje podataka za javascript


PeTkO
6.1.2012, 2:43
Pozdrav

Potrebna mi je pomoc. Kako da podatke iz jednog text fielda prosledim podatke javascript funkciji nakon klika na dugme (ali ne na submit dugme)? Evo deo koda skripte pa cete sami videti u cemu je problem:

$start = $row["start"];
$tarifaDB = $row[$tarifa];
echo '<input type="text" name="km" />';
echo '<input type="button" value="Izracunaj" onClick="cena2('.$start.','.$tarifaDB.','.$podaciIzTextFiel d.')" />

Znaci, funckija cena2 ima tri parametra: start, tarifaDB, i treci parametar je onaj koji korisnik ukuca u text field. Klikom na dugme u formi, poziva se JS funkcija "cena2" i njoj se prosledjuju navedeni podaci i ona izvrsava njene zadatke (to nije sada bitno)...Kako da joj prosledim podatke iz text fielda?

EclipsE
6.1.2012, 4:46
Short answer: dodeliš id text fieldu, i onda kada pozivaš cena2, kao treći argument:

document.getElementById('id-fielda').value

PeTkO
6.1.2012, 16:33
Ok, tnx...dosta sam slab sa javascript :)

PeTkO
6.1.2012, 17:03
Ajde da ne otvaram novu temu...Eksperimentisem sa Ajaxom malo, jos uvek ga ucim, i pokusavam da napravim skriptu koja ce nakon selekcije u dropdown listi, da otvori php fajl u koji ispisuje sta si selektovao u listi. Ja sam napisao skriptu, ali nece da radi, pa mi je potrebna vasa pomoc. Evo koda:
HTML (ime fajla index.html):
<form>
<select name="grad" onchange="grad(this.value)">
<option value="">Izaberi grad</option>
<option value="Beograd">Beograd</option>
<option value="Novi Sad">Novi Sad</option>
<option value="Nis">Nis</option>
</select>
</form>
<div id="grad2"></div>

PHP (ime fajla grad2.php):
$grad=$_GET["grad"];
echo "Selektovao si ".$grad;

JS:
function grad(grad)
{
if (window.XMLHttpRequest)/* code for IE7+, Firefox, Chrome, Opera, Safari */
{
xmlhttp=new XMLHttpRequest();
}
else
{/* code for IE6, IE5 */
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4)/* && xmlhttp.status==200) */
{
document.getElementById("grad").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","grad.php?grad="+grad,true);
xmlhttp.send();
}



U cemu je problem? Gde gresim?

EclipsE
6.1.2012, 18:13
PHP (ime fajla grad2.php):

xmlhttp.open("GET","grad.php?grad="+grad,true);
xmlhttp.send();

maybe? Nikad nisam radio sa XMLHttpRequest, jQuery rules...

PeTkO
6.1.2012, 18:47
Prethodni problem sam resio, ali javio se novi. Kako da pozovem odredjenu JS funkciju i da joj prosledim dva parametra preko radio dugmica? Evo dela koda:

<input type="radio" name="tarifa" value="tar2_cena" id="tar2_cena" onClick="getKm('.$taxi.', this.value)" />Tarifa 2 '.$row["tar2_opis"].'<br \>
<input type="radio" name="tarifa" value="tar3_cena" id="tar3_cena" onclick="getKm('.$taxi.', this.value)" />Tarifa 3 '.$row["tar3_opis"].'<br \>


JS:

function getKm(taxi, tarifa)
{


if (window.XMLHttpRequest)/* code for IE7+, Firefox, Chrome, Opera, Safari */
{
xmlhttp=new XMLHttpRequest();
}
else
{/* code for IE6, IE5 */
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4)/* && xmlhttp.status==200) */
{
document.getElementById("km").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","/km.php?taxi="+taxi+"&tarifa="+tarifa,true);
xmlhttp.send();
}


Znaci korisnik moze da selektuje samo jedan radio button, svaki radio button nosi drugacije podatke(sluzi mi kasnije za izvlacenje odredjenih podataka iz baze), i kada se selektuje poziva JS koji prosledjuje podatke php fajlu (u ovom slucaju km.php) i on dalje radi ono sto mu je napisano (nije bitno to sada). Probaosam sa onClick, onSelect, onChange i nista mi ne daje rezultat.