29. august 2010 - 10:56Der er
3 kommentarer og 1 løsning
Forms i Ajax, hvordan sender jeg svaret tilbage til DIV'en hvor input formen var ?
Jeg har oprettet en form der vises i en DIV på min HTML side, der ellers er skjult. Formen dannes af et AJAX kald, da indholdet er afhængig af 1-50 forskellige links til denne input form. Selve AJAX kaldet og den grundlæggende behandling af formen virker godt nok, men når resultatet skal vises, kommer det i browser vinduet og ikke inde i min DIV.
jeg formoder at jeg skal skrive et nyt AJAX kald, men vil gerne høre din mening.
Her er mit første ajax kald: function ajaxAddReview(beerid){ var ajaxRequest; // The variable that makes Ajax possible!
try{ // Opera 8.0+, Firefox, Safari ajaxRequest = new XMLHttpRequest(); } catch (e){ // Internet Explorer Browsers try{ ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try{ ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){ // Something went wrong alert("Your browser broke!"); return false; } } } // Create a function that will receive data sent from the server ajaxRequest.onreadystatechange = function(){ if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Ja du har noget af en pointe, efter at jeg stillede mit spørgsmål i går, har jeg arbejdet mere med problemet og kommet frem til en løsning.
I den skjulte DIV bygges formen op, og mit første ajaxrutine (ajaxAddReview) indsættes de nødvendige værdier i formen, + info til bruger om hvad der anmeldes.
I formen kaldes ajaxrutine 2 (ajaxAddReview2) som sender data til et nyt php script hvor data gemmes i databasen og resultat vises i vinduet (via ajaxAddReview2)
function ajaxAddReview(beerid){ var ajaxRequest; // The variable that makes Ajax possible!
try{ // Opera 8.0+, Firefox, Safari ajaxRequest = new XMLHttpRequest(); } catch (e){ // Internet Explorer Browsers try{ ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try{ ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){ // Something went wrong alert("Your browser broke!"); return false; } } } // Create a function that will receive data sent from the server ajaxRequest.onreadystatechange = function(){ if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
function ajaxAddReview2(){ var ajaxRequest; // The variable that makes Ajax possible!
try{ // Opera 8.0+, Firefox, Safari ajaxRequest = new XMLHttpRequest(); } catch (e){ // Internet Explorer Browsers try{ ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try{ ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){ // Something went wrong alert("Your browser broke!"); return false; } } } // Create a function that will receive data sent from the server ajaxRequest.onreadystatechange = function(){ if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
document.getElementById('addreviewtext3').innerHTML=ajaxRequest.responseText; // var link = '<td id="' + key +'"><a href="java script:CloseBeer(' + "'" + beerid + "','" + div + "','" + key + "')" +'";"><img src="images/close.gif" onmouseover="return overlib(\'Skjul Øldata\',WIDTH,90);" onmouseout="return nd();" border="0"></a></td>'; // document.getElementById(key).innerHTML=link; } } var beerid= document.getElementById('beerid').value; var color= document.getElementById('farve').value; var points= document.getElementById('points').value; var text=escape(document.getElementById('tekst').value); text=text.replace("+", "%2B"); text=text.replace("/", "%2F");
Naturligvis, opgaven lukkes, den er jo løst af mig selv.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.