settimeout - cleartimeout, de hogyan ?
Sziasztok, -van egy JS fugv. -em (honositottam, kolcsonoztem a net -rol :-):
function requestGyogyszerInfo() {
if (!oIFrame) {
createIFrame();
setTimeout(requestGyogyszerInfo, 10);
return;
}
var betegid = document.getElementById("betegid").value;
var gyogyszer_ID = document.getElementById("txtGyogyszerId").value;
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+betegid;
}
-azt csinalja, hogy egy formrol (gyorskereses,
<INPUT TYPE="text" NAME="nev" id="txtGyogyszerId" value="" onkeyup="requestGyogyszerInfo()" />) erkezo karaktereket vár, s elkuldi a GetGyogyszerData.php -nak, amelyik tovabbitja az SQL -nek. Azt szeretnem ha 2 masodpercen belul ismetelten leut egy karaktert akkor az elozot :
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+betegid;
el se kuldje. Probalkoztam a set es cleartimeout -al, de nem tudtam megoldani, hogyan lehetne megis elerni, hogy amennyiben 2 mp-en belul ismetelten leut egy karaktert akkor csak az uj kerest kuldje el ?
Koszi: -gyuri-
u.i.: hasonlot irtam az SQL -listara is, de akkor a MySQL process leallitasan gondolkoztam, de rajottem az megse jo, de elnezest azoktol akik mind2 listat olvasak, s feleslegesen terheltem kerdeseimmel... :-(
■ function requestGyogyszerInfo() {
if (!oIFrame) {
createIFrame();
setTimeout(requestGyogyszerInfo, 10);
return;
}
var betegid = document.getElementById("betegid").value;
var gyogyszer_ID = document.getElementById("txtGyogyszerId").value;
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+betegid;
}
-azt csinalja, hogy egy formrol (gyorskereses,
<INPUT TYPE="text" NAME="nev" id="txtGyogyszerId" value="" onkeyup="requestGyogyszerInfo()" />) erkezo karaktereket vár, s elkuldi a GetGyogyszerData.php -nak, amelyik tovabbitja az SQL -nek. Azt szeretnem ha 2 masodpercen belul ismetelten leut egy karaktert akkor az elozot :
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+betegid;
el se kuldje. Probalkoztam a set es cleartimeout -al, de nem tudtam megoldani, hogyan lehetne megis elerni, hogy amennyiben 2 mp-en belul ismetelten leut egy karaktert akkor csak az uj kerest kuldje el ?
Koszi: -gyuri-
u.i.: hasonlot irtam az SQL -listara is, de akkor a MySQL process leallitasan gondolkoztam, de rajottem az megse jo, de elnezest azoktol akik mind2 listat olvasak, s feleslegesen terheltem kerdeseimmel... :-(
Egyszerű
biztos en vagyok a bena...
-ha nem tul nagy keres ilyen kesso este, s tenyleg olyan egyszeru nem irnad at a kov. fv. -t ? Persze tudom ilyen konkret kereseket nem szokas a listara irni, de talan 1-2 kivetelt lehet tenni...
function requestGyogyszerInfo() {
if (!oIFrame) {
createIFrame();
setTimeout(requestGyogyszerInfo, 10);
return;
}
var betegid = document.getElementById("betegid").value;
var gyogyszer_ID = document.getElementById("txtGyogyszerId").value;
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+ betegid;
}
Koszi: -gyuri-
csak az alapkoncepció..
megse muxik a settimeout...
function requestGyogyszerInfo() {
if (!oIFrame) {
createIFrame();
setTimeout(requestGyogyszerInfo_1, 10);
return;
}
var betegid = document.getElementById("betegid").value;
var gyogyszer_ID = document.getElementById("txtGyogyszerId").value;
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+ betegid;
}
-ez volt az eredeti, s ezt alkottam belole :
function requestGyogyszerInfo() {
if(tim) {
clearTimeout(tim);
}
if (!oIFrame) {
tim=setTimeout(createIFrame(), 2000);
if (oIFrame)
{
setTimeout(requestGyogyszerInfo, 10);
return;
}
}
var betegid = document.getElementById("betegid").value;
var gyogyszer_ID = document.getElementById("txtGyogyszerId").value;
oIFrame.location = "GetGyogyszerData.php?id=" + gyogyszer_ID+ "&betegid="+ betegid;
}
Biztos sas szemueknek egy ranezesre beugrik a hiba, de nekem mint lámer JS -buheralo nem.
Koszi a segitseget : -gyuri-
egymásba ágyazott ellentmondó feltételek
Igazából ma már ezt a problémát normális ajax technikával kéne megoldani és nem iframe nyitogatásokkal... Szerintem.
Ui: Használd a kód kiemelést a kódrészletekre, sokkal olvashatóbb lenne velük a hozzászólásod...