2011-08-24 44 views
6

Supongo que lo que estoy preguntando es realmente fácil para la mayoría de ustedes. Quiero volver a cargar un div sin volver a cargar toda la página. ¿Cuál es la mejor manera de hacerlo?¿Cómo volver a cargar un div sin volver a cargar toda la página?

<div class="black_text" id="cp_in_content_div"> 
<?php 
$id = $_GET["id"]; 
$result = mysql_query("SELECT * FROM Setting WHERE ID = $id"); 
$row = mysql_fetch_array($result); 
switch ($_GET["action"]) 
{ 
    case "delete": 
    if (!unlink("$_SERVER[DOCUMENT_ROOT]setting/$row[Filename]")) 
    { 
     echo "Error."; 
     header("Refresh: 2.5; URL=delete_setting.php?id=$id"); 
     exit(); 
    } 
    if (!mysql_query("DELETE FROM Setting WHERE ID = $id")) 
    { 
     echo "Error."; 
     header("Refresh: 2.5; URL=delete_setting.php?id=$id"); 
     exit(); 
    } 
    else 
    { 
     echo "Ok!"; 
     header("Refresh: 1.25; URL=index.php"); 
    } 
    break; 
    default: 
    echo "form"; 
} 
?> 
</div> 

Necesito esos encabezados ("Refresh: ...") para volver a cargar solo el div en lugar de la página.

+0

Bienvenido a SO @Gabriele! ¿Puedes editar la pregunta para proporcionar el código en el que estás trabajando? –

+1

@jas: Siento que no tiene código :) – genesis

+0

Lo edité .... – Gabriele

Respuesta

7
$("#div_element").load('script.php'); 

demo: http://sandbox.phpcode.eu/g/2ecbe/3

código de conjunto:

<div id="submit">ajax</div> 
<div id="div_element"></div> 
<script> 
$('#submit').click(function(event){ 
    $("#div_element").load('script.php?html=some_arguments'); 

}); 
</script> 
12

jQuery.load() es probablemente la forma más fácil de cargar datos de forma asíncrona mediante un selector, pero también se puede utilizar cualquiera de los métodos jquery ajax (get, post, getJSON, ajax, etc.)

Tenga en cuenta que load le permite usar un selector para especificar qué parte del script cargado desea cargar , Como en

$("#mydiv").load(location.href + " #mydiv"); 

Tenga en cuenta que esta técnica no cargar toda la página y jQuery elimina todo menos lo que haya seleccionado, pero eso es todo hecho internamente.

1

escribir una etiqueta de botón y en función de clic

var x = document.getElementById('codeRefer').innerHTML; 
    document.getElementById('codeRefer').innerHTML = x; 

escribir todo esto en función onclick

1

Utilice esta.

$('#mydiv').load(document.URL + ' #mydiv'); 

Nota, incluya un espacio antes de la hastag.

Cuestiones relacionadas