Pues con base a las experiencia que he tenido yo con ajax si optimiza el rendimiento del retorno de datos y mas que eso, recuerda que la respuesta que debe de recibir el ajax es una respuesta PHP osea una respuesta del servidor, en mi caso una vez estaba retornando codigo html tal como tu lo estas haciendo y nunca me presento la tabla que estaba retornando a pesar de que le hacia al div correspondiente un .html tal como lo tienes lo cambie a .append y tampoco funko, corregi el problema retornando una respuesta como esta:
Código PHP:
$response = "<table>";
$response .= "<tr>";
$response .= "<td>test</td>";
$response .= "</tr>";
$response .= "</table>";
echo $response
AJAX:
Código Javascript
:
Ver originalnom= $("#nom").val() ;
str = "nom="+nom;
$.ajax({
type: 'POST',
url: 'ListadoProductos2.php',
data: str,
success:function(msg){
$("#result").append(msg)
}
});