weixin_33716154 2018-05-31 12:30 采纳率: 0%
浏览 22

不要提醒AJAX

I'm trying to get result and alert it if the solicitude was successful or not on the PHP file, it worked (because changed the results) but the AJAX didn't show alerts (No error and no "true")

js:

function addentrys() {
    var nwentry =  {};
    el = document.getElementById('addname').value;
    eldmn = document.getElementById('adddomain').value;
    nwentry.name = el;
    nwentry.domain = eldmn;

    $.ajax({
        type: 'POST',
        url: 'api/domain',
        dataType: 'json',
        data: nwentry
    }).done(function(data) {
        alert(data);
    });
}

php:

    $app->post('/domain', function () {
    $jsonContents = file_get_contents('data/data.json');
    $name = $_POST['name'];
    $domain = $_POST['domain'];
    $data = json_decode($jsonContents, true);
    $last_item = end($data);
    $last_item_id = $last_item['id'];
    $data[] = array(
        'name' => $name,
        'domain' => $domain,
        'id' => $last_item_id+1
    );


    $json = json_encode($data);
    file_put_contents('data/data.json', $json);
    return true;
});
  • 写回答

1条回答 默认 最新

  • helloxielan 2018-05-31 13:09
    关注

    The result is probably not in JSON format, so when jQuery tries to parse it as such, it fails. You can catch the error with error: callback function.

    You don't seem to need JSON in that function anyways, so you can also take out the dataType: 'json' row.

    评论

报告相同问题?