Tjohoo!
Jag sitter här och brökar med Ajax. Det är väldigt vackert, AJAX. Jag har en funktion som låter mig hämta data med ett formulär från databasen, utan att sidan behöver uppdateras... Jag sitter här och funderar på hur jag ska kunna modda om det så att jag inte behöver använda ett formulär för att få datan, utan istället bara välja vilken data från databasen direkt i koden.
T.ex att Ajax ska ligga och bevaka COUNT(*) AS Antal WHERE Namn = "Oskar". Och när antalet Oskar stiger eller sjunker så ska siffran jag fått fram med Ajax uppdateras direkt utan uppdatering av själva sidan.
Så här är min kod:
<html>
<head>
<script language="javascript" type="text/javascript" src="javascript.js"></script>
</head>
<body>
<form name="input">
<input name="customer" id="customer" type="text" onkeyup="findCustomer(this.value);" />
</form>
<div id="minDiv"></div>
</body>
</html>
function makeRequest(url) {
var http_request = false;
if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Gick ej...');
return false;
}
http_request.onreadystatechange = function() { alertContents(http_request); };
http_request.open('GET', url, true);
http_request.send(null);
}
function alertContents(http_request) {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
document.getElementById('minDiv').innerHTML = http_request.responseText;
} else {
document.getElementById('minDiv').innerHTML = "";
}
}
}
function findCustomer(str) {
str = parseInt(str)
makeRequest('sida.asp?namn=Oskar')
}
Jag antar att jag ska försöka ändra "GET"-funktionerna i javascriptet, men vet inte vad jag ska använda mig av istället :l Har läst Ajax-artiklar, men jag har nog inte hittat det som jag söker tror jag.
Tänk er att jag vill göra så här liksom:
Do Until RecSet.EOF
Response.Write RecSet("Namn") & ": " & RecSet("Antal") "st."
RecSet.MoveNext
Loop
Där ska RecSet("Antal") uppdateras automagiskt, med hjälp av Ajax.
Jag har försökt med en sorts uppdateringsfunktion (refresh) med hjälp av Javascript, men det verkar bli alldeles fel, och för primitivt!
Vet någon av er hur jag ska modda om mitt script, eller är jag ute och cyklar?
Ha en bra dag!
Mvh
Oskar