Autor Tema: [jQuery] Error al enviar datos POST con Chrome/CoolNovo  (Leído 1637 veces)

Desconectado iStocker

  • PHPer@ Fijo
  • ***
  • Mensajes: 104
  • Karma: 6
  • ~ єssєитιαʟ ~
    • Ver Perfil
[jQuery] Error al enviar datos POST con Chrome/CoolNovo
« en: 03 de Diciembre de 2012, 00:52:12 am »
El problema es que al parecer en Firefox envía los datos correctamente pero en Chrome/CoolNovo no lo hace, no sé porqué & no encuentro alguna solución... Les agradecería si me pudieran ayudar. Estoy usando la última librería de jQuery (code.jquery.com/jquery-lastest.js), uso la última versión de Chrome, uso Windows 7 & si necesitan algún dato más por favor comentarlo & les contestaré, gracias por su atención ñ.ñ

Código: (javascript) [Seleccionar]
$("input").dblclick(function()
{
var data = $(this);
var url = "http://localhost/cmsdrako/habblet/ajax_updatemotto.php";

$.ajax({
type: 'POST',
    url: url,
    data: data.serialize(),
    success: datUp(data)
});

function datUp(data)
{
console.log("LOG " + data.val());
$("input[data-id='motto']").slideUp("slow");
$("#motto").html(data.val()).fadeIn("slow");
}
});
¡FUUU!


Cita de: Mary Shaw
Menos del 10% del código tienen que ver directamente con el propósito del sistema; el resto tiene que ver con la entrada y salida, validación de datos, mantenimiento de estructuras de datos y otras labores domésticas



[/cent

Comunidad PHPeros

[jQuery] Error al enviar datos POST con Chrome/CoolNovo
« en: 03 de Diciembre de 2012, 00:52:12 am »

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
Re:[jQuery] Error al enviar datos POST con Chrome/CoolNovo
« Respuesta #1 en: 09 de Enero de 2013, 22:43:46 pm »
Es por que estás haciendo una petición a un dominio http desde AJAX, lo cual no es permitido por los estándares de ECMAScript. Te recomiendo que te fijes si te lanza un error en la consola, y qué error es.

Adicionalmente, un par de recomendaciones sobre la calidad del código:

1- No necesitas declarar la variable URL, ya que el texto nunca va a variar y va a ser utilizado solo una vez.
2- No necesitas crear una función `datUp()`, ya que sólo se va a utilizar una vez en el código, lo mejor es utilizar una función anónima.

Por lo que al final, podrías usar tu código de la siguiente manera:

Código: [Seleccionar]
$('input').on('dblclick', function() {
    var data = $(this);

    $.ajax({
        type: 'POST',
        url: 'http://localhost/cmsdrako/habblet/ajax_updatemotto.php',
        data: data.serialize(),
        success: function() {
            console.log('LOG %s', data.val());
            $('input[data-id="motto"').slideUp('slow');
            $('#motto').html(data.val()).fadeIn('slow');
        }
    });
});

Un saludo ;)
- Moderador de PHP