2016-07-14 55 views
0

我试图调用$ .post()函数,但当我按下按钮nothings发生,但如果我尝试调用$ post()函数的结果是一个错误,但代码的作品。我真的不明白。

在图像中,第一个选项得到一个错误,但工程,我的意思是$ _post变量发送。第二个不做任何事情,甚至没有任何错误。

$(document).ready(function(){ 
    $("#nueva_categoria").submit(function(){ 

     var datos_categoria = $(this).serialize();  
     $post("articulo_controller.class.php", datos_categoria); 
     return false; 
    }) 
}); 

$(document).ready(function(){ 
    $("#nueva_categoria").submit(function(){ 

     var datos_categoria = $(this).serialize();  
     $.post("articulo_controller.class.php", datos_categoria); 
     return false; 
    }) 
}); 
+1

你得到什么错误? – venture

回答

0

$post不存在,除非你确定它(因为你得到一个错误,我猜你没有)。 $.post是jQuery ajax后速记的正确调用。

在第一个示例中提交数据的原因是$post行发生了错误。正因为如此,您的JavaScript执行已停止。所以return false;永远不会执行。因此,表格正在提交。

第二个例子应该提交一个ajax POST。有可能是你没有看到的错误。打开浏览器的网络检查工具,你应该能够看到请求。地址是否正确,或者您是否应该在该网址中使用领先的/?您目前如何验证数据是否正在发布?

0

第二个选项是正确的,但是提交被“返回false”拦截。

我想你需要看看你的ajax是否正确并且不返回任何错误。

$.ajax({ 
     url: 'articulo_controller.class.php', 
     type: 'POST', 
     data: datos_categoria, 
    }) 
    .done(function() { 
     console.log("success"); 
    }) 
    .fail(function() { 
     console.log("error"); 
    }); 

这样你就可以看到你的ajax是否正确。