Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Codice JS da ajax

  1. #1

    Codice JS da ajax

    Non sapevo che titolo dare quindi ho pensato quello, allora inizialmente ho creato una pagina in php che viene caricata tramite ajax.. funziona ma il js non funziona
    Quindi, ho pensato di portare il codice javascript sulla pagina principale dove viene gettato il contenuto della pagina php ma quel codice js riceve delle "modifiche" dal php, cioe alcuni valori vengono presi dal php e quindi non posso muoverli da li.
    Cosi, ho pensato di fare un sistema che prendesse questo codice e lo portasse su una variabile cosi ho fatto cosi
    codice:
    	<?
    			echo 'STARTINGCODE: var myInterfacce = new Array(); function loading_previews(){';
    			if($r==1)
    			{
    				
    				
    				echo 'myInterfacce[0] = "'.$imgs[0]['url'].'";';
    				echo 'myInterfacce[1] = "'.$imgs[1]['url'].'";';
    				echo 'myInterfacce[2] = "'.$imgs[2]['url'].'";';
    			}
    			echo '}
    				var scegli_preview = 1;
    				function alternativa_anteprima(){
    					if(scegli_preview < 0 || scegli_preview > 2 )
    					{
    						scegli_preview = 0;
    					}
    					scegli_preview++;
    					if(scegli_preview > 2) scegli_preview = 0;
    					document["image_revview"].src = myInterfacce[scegli_preview];
    					document.getElementById(\'current_anteprima\').innerHTML = "(Anteprima attuale: "+scegli_preview+")";
    				}
    				window.onload = loading_previews()
    				:ENDINGCODE
    			';
    	?>

    e il codice che carica quella pagina l'ho modificato cosi

    codice:
    		function loadinterfacciasharing(link)
    		{
    			if(type_sharing==-1){
    				return 0;
    			}
    			var xmlhttp;
    			if (window.XMLHttpRequest)
    			  {
    			  xmlhttp=new XMLHttpRequest();
    			  }
    			else
    			  {
    			  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    			  }
    			xmlhttp.onreadystatechange=function()
    			  {
    			  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    			    {
    			    	var codiceDaConveritere = xmlhttp.responseText.split("STARTINGCODE:");
    			    	document.getElementById("sharing").innerHTML=codiceDaConveritere[0];
    			    	//alert(codiceDaConveritere[1]);
    			    	var risultatofinale = codiceDaConveritere[1].split(":ENDINGCODE");
    			    	//alert(risultatofinale[0]);
    			    	eval(risultatofinale[0]);
    			 	}
    			  }
    			xmlhttp.open("GET","media_sharing_response.php?link="+link+"&r="+type_sharing,true);
    			xmlhttp.send();
    		}
    Su risultatofinale[0] cè il codice JS corretto e funzionante, ma ora mi sorge un problema come posso portarlo a javascript cioe farlo funzionare come tale?
    Ho provato eval che dovrebbe inserire codice js, ho provato
    document.write, ho provato document.body.write ma mi stampa il codice originale senza applicarlo come js
    Come posso fare ?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Puoi guardare nella discussione in evidenza alla voce ajax...
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Ho modificato cosi
    codice:
    		function loadinterfacciasharing(link)
    		{
    			if(type_sharing==-1){
    				return 0;
    			}
    			var xmlhttp;
    			if (window.XMLHttpRequest)
    			  {
    			  xmlhttp=new XMLHttpRequest();
    			  }
    			else
    			  {
    			  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    			  }
    			xmlhttp.onreadystatechange=function()
    			  {
    			  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    			    {
    			    	//document.getElementById("sharing").innerHTML=xmlhttp.responseText;
    			    	var fine = execJS(xmlhttp.responseText);
    			    	document.getElementById("sharing").innerHTML=fine;
    			 	}
    			  }
    			xmlhttp.open("GET","media_sharing_response.php?link="+link+"&r="+type_sharing,true);
    			xmlhttp.send();
    		}
    			
    			function execJS(t) 
    { 
        var p1 = 0, p2 = 0, p3 = 0, p4 = 0; 
        p1 = t.indexOf("<" + "script", 0); 
        if(p1 == -1) return t; 
         
        p2 = t.indexOf(">", p1 + 7) + 1; 
        p3 = t.indexOf("<" + "/script>", p2); 
        p4 = p3 + 9; 
         
        var c = t.substring(p2, p3); 
        var s = document.createElement("script"); 
        s.type = "text/javascript"; 
        s.text = c; 
        document.getElementsByTagName("head")[0].appendChild(s); 
         
        t = t.substring(0, p1) + t.substr(p4); 
        return execJS(t); 
    
    }
    Ma il javascript viene visualizzato come testo
    codice:
    var myInterfacce = new Array(); function loading_previews(){myInterfacce[0] = "http://i.ytimg.com/vi/K1uNjmxJQUo/0.jpg";myInterfacce[1] = "http://i.ytimg.com/vi/K1uNjmxJQUo/1.jpg";myInterfacce[2] = "http://i.ytimg.com/vi/K1uNjmxJQUo/2.jpg";} var scegli_preview = 1; function alternativa_anteprima(){ if(scegli_preview < 0 || scegli_preview > 2 ) { scegli_preview = 0; } scegli_preview++; if(scegli_preview > 2) scegli_preview = 0; document["image_revview"].src = myInterfacce[scegli_preview]; document.getElementById('current_anteprima').innerHTML = "(Anteprima attuale: "+scegli_preview+")"; } window.onload = loading_previews()

  4. #4
    Ho risolto era stata una mia dimenticanza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.