En el proceso de aprendizaje de las solicitudes de Ajax utilizando jQuery, traté de cargar la página de inicio de Google con un clic en un enlace. Así que escribí algo como:¿Por qué no puedo cargar un recurso externo desde el método de carga jQuery?
$("#ajax").click (function (event) {
$("#g").html("Loading...");
$("#g").load("http://www.google.com");
event.preventDefault();
});
Y en algún lugar en el cuerpo:
<a id="ajax" href="http://www.google.com">Load file ajax way</a>
<div id="g">Click the above link to load the page...</div>
que no funcionaba y en un principio pensé que hay algún error de sintaxis o algo así. Pero más tarde, cuando reemplacé la url de google con un archivo html estático en el servidor, funcionó correctamente.
$("#g").load("Temp.htm");
¿Está diseñado para trabajar como esto (si es así, ¿por qué?) O estoy haciendo algo mal?
EDITAR: ¿Alguien puede explicar (o remitir) el problema de seguridad introducido por las llamadas de dominio cruzado ajax? En otras palabras, ¿por qué es seguro abrir otra pestaña del navegador y abrir Google pero NO desde dentro de la página? ¿Es para proteger a la persona que llama o al que llama?
+1 Fantástica respuesta. –
Muy completa y completa respuesta –
para que load.php simplemente lea el dominio consultado y almacene los contenidos? – 3zzy