jQuery, ajax, chrome y tabs

Hoy ha ocurrido algo muy curioso, tenemos un código que envía por ajax una petición al servidor y el dato devuelto lo asimila otra función para enviar un formulario, veamos el código:

$.ajax({
type: "POST",
url: "carga.php?Accion=Identifica",
data: "variable="+valor,
async:true,
contentType: "application/x-www-form-urlencoded",
dataType: "text",
success: function(tipo){
enviarFormulario(tipo,valor);
}
});

La única desventaja es que enviar un formulario desde dentro de la función success en chrome es identificado como un pop-up no como una nueva ventana o un nuevo tab, en firefox si funciona correctamente, la solución paso por declarar una variable anterior que guarde los datos recogidos del ajax, el ajax declararlo como NO asíncrono y luego enviar el formulario fuera.


Curioso sin dudas ¿os ha pasado?


Actualización:


Código de la función que envía el formulario



function enviarFormulario(tipo,dato){
var form = document.formulario;
form.dato_id.value = dato;
form.method = "POST";
form.target = "_blank";
switch (tipo){
case '1':
form.action = "index.php?p=c";
break;
case '2':
form.action = "index.php?p=s";
break;
case '3':
form.action = "index.php?p=o";
break;
}
form.submit();
}


Código de la función inicial corregida y que funciona correctamente:



function identificaTipo(s){
var tipo_s = "3";
$.ajax({
type: "POST",
url: "carga.php?Accion=Identifica",
data: "s="+s,
async:false,
contentType: "application/x-www-form-urlencoded",
dataType: "text",
success: function(tipo){
tipo_s = tipo;
}
});
enviarFormulario(tipo_s,s);
}

Comentarios

Anler Hernández Peral ha dicho que…
Puedes poner el código que envía el formulario??
Reynier ha dicho que…
Listo, ya he actualizado el post