Hola.
Primero que nada me parece que tus codigos ni siquiera los has corrido por que es imposible que te den el mismo resultado como tu afirmas, tratare de explicarte brevemente por que, leete los comentarios que pongo en tu codigo.
Código Javascript
:
Ver original}
$(document).ready(function(){
$("#boton1").click(function(e){
if (!e.isDefaultPrevented()){
$.post("contenido.php",function(data){ //esta funcion post manda mediante ajax datos post a un archivo y la respuesta la recibe en la variable data
if (data!=false){
$('#div_recibe').html(data); //luego con esta funcion html insertas ese data en el div di_recibe formatenado el resultado en html
};
});
e.preventDefault();
}
});
});
Código Javascript
:
Ver original$(document).ready(function(){
$("#boton1").click(function(e){
if (!e.isDefaultPrevented()){
$.post("contenido.php",function(data){
if (data!=false){
$('#div_recibe').load('ctcsdets.php');// Aca lo que ta hace es cargar el resultado del archivo "ctcsdets.php" en el div_recibe, desechando asi el envio por post y el contenido de la variable data
};
});
e.preventDefault();
}
});
});
Como te podrás dar cuenta tus códigos nunca darán el mismo resultado, por eso supongo que ni siquiera los corriste.
También explicarte que la función .html() de jquery lo que hace es insertar en formato html a un elemento, no necesariamente tiene que venir de una petición ajax, puede ser generada por un javascript, xml, php, etc. el origen le es indiferente.
En cambio la función .load() lo que hace es cargar el resultado obtenido de una peticion ajax en el elemento establecido en formato html.
Ahora ves las diferencias:
1.- html() no te trae nada por ajax, load() siempre.
2.- con html() puedes insertar html desde cualquier origen, en load no, pues siempre sera resultado del ajax.
Espero puedas entenderlo ahora.
Saludos.