$ .post()无法按预期工作

时间:2014-03-09 11:13:58

标签: javascript jquery

今天我使用的是j Query $ .post();方法,但我找不到我遇到的问题的原因。代码段位于

之下
$(document).ready(function(){

    //When the button 1 is clicked
    $('#generateTable1').click(function(){

        //Get the Json data of the product low in stock
        $.post('database_to_phpJSON.php',{option:1},function(value){
            value=JSON.parse(value);
            console.log(value);
            alert("hi");
        },{dataType:'json'});

    });

});

现在当我运行代码而不是我没有得到警告消息“嗨”并且在firebug的控制台中我没有看到console.log输出。 但是,当我从我的代码中删除 dataType时,每件事情都很好...... 请让我知道这一点。

2 个答案:

答案 0 :(得分:1)

这是因为在使用$.post时,您只将dataType作为字符串传递

$.post('database_to_phpJSON.php', {option:1}, function(value){

      console.log(value);

      alert("hi");

}, 'json').fail(function() {
      console.log(arguments); // will tell you what's wrong
});

使用正确的dataType

时,结果将由jQuery自动解析

答案 1 :(得分:1)

第三个参数是数据类型,你只需要传递一个字符串,而不是一个对象。

    $.post('database_to_phpJSON.php',{option:1},function(value){
        // and if you set the datatype to json, the value is already parsed.
        // value=JSON.parse(value);
        console.log(value);
        alert("hi");
    }, 'json');