En mi página web hay un iframe que muestra algunos datos. Cuando el usuario hace clic en un botón en la página principal, se debe cambiar el contenido en iframe. Lo que hice fue enviar una solicitud de obtención con la especificación del contenido que se cambiará usando AJAX. Luego, el servidor devuelve una página html con el contenido solicitado. Aquí está mi código,
html:
<button id="new-folder" class="control">Folder</button> <div id="iframe-div"> <iframe src="/tree" name="main_iframe"> </iframe> <div>javascript (Jquery y AJAX):
$(document).ready(function(){ $("#new-folder").click(function(e){ $.get("/tree", {control: "new-folder"}, function(data){ $("#main-iframe").location.reload(); }); }); });Lo que esto hace es que cuando el usuario hace clic en el botón (#nueva carpeta), se envía una solicitud de publicación especificando el nombre de la carpeta. Está funcionando muy bien. También la respuesta está regresando con éxito. Ahora lo que debo hacer es mostrar los datos de respuesta en el iframe sin recargar. La respuesta es una página html. Pero la respuesta no se muestra en iframe a menos que se vuelva a colocar.
Lo intenté
$.get("/tree", {control: "new-button"}, function(data){ $("#main-iframe").contents().find("html").html(data); });y muchos más métodos similares. Pero ninguno de ellos está trabajando. Incluso el método reload() no funciona. Mi objetivo principal es actualizar el iframe de contenido sin recargar. la respuesta es una página html. Entonces, ¿qué necesito hacer? Estoy usando Jquery y AJAX.
Editar:
La publicación anterior que se sugirió no responde a mi pregunta. Porque estoy buscando una forma de cambiar/actualizar el contenido en iframe sin recargarlo. Pero la respuesta sugerida es sobre recargar iframe. Traté de recargar el iframe como una solución temporal. Eso no es lo que estoy esperando. Además, las soluciones probadas no funcionan en mi código.