AJAX полностью функциональн, но все еще показывает сообщение об ошибке - PullRequest
2 голосов
/ 09 марта 2011

В 3 различных сценариях AJAX, которые я написал, отображается сообщение об ошибке, даже если ajax обрабатывает обновленный файл PHP и выполняются все операторы успеха.Так как я открыл Ajax только несколько дней назад.Там должно быть что-то не так с моими сценариями.Возможно, кто-то мог увидеть, где я ошибся.

AJAX:

function bookingdetails() {
    var actdate = $('#actdate').val();
    var airport = $('#FLTairport').val();
    var number = $('#FLTnumber').val();
    var time = $('#FLTtime').val();

    var dataString = 'actdate=' + actdate + '&airport=' + airport + '&number=' + number + '&time=' + time;

    $.ajax({
            type: 'POST',
             url: '<?php echo $thisposturl;?>?update',
             data: dataString,
             beforeSend: function() {
                 $('#airloader').html('<img id="BKloader" src="http://www.divethegap.com/update/z-images/structure/icons/blockloader.gif" alt="" width="30" height="30"/>');
                 },
                  error: function() {
                 $('#airloader').html('arse up');
                 },
                 dataType:'json',
             success: function(data) {
     $('#actdate').val(data.date);
     $('#FLTnumber').val(data.FLTnumber);
     $('#airloader').html('marvellous');
     $('#FLTairport').val(data.FLTairport);
     $('#FLTdate').val(data.FLTdate);
     $('#FLTtime').val(data.FLTtime);
     $('#datediv').load('<?php echo $thisposturl;?> #datediv');
}


        });

}

PHP: (не беспокойтесь о битах вставки)

<?php

   function __update_post_meta( $post_id, $field_name, $value = '' )
{
    if ( empty( $value ) OR ! $value )
    {
        delete_post_meta( $post_id, $field_name );
    }
    elseif ( ! get_post_meta( $post_id, $field_name ) )
    {
        add_post_meta( $post_id, $field_name, $value );
    }
    else
    {
        update_post_meta( $post_id, $field_name, $value );
    }
}

if ( is_user_logged_in() ) {
$my_post = array(
    'ID' => get_the_ID(),
    'post_date' => $_POST['actdate'],
);
 $the_post_id = wp_update_post( $my_post );

__update_post_meta( $the_post_id, 'FLTairport', $_POST['airport'] );
__update_post_meta( $the_post_id, 'FLTnumber', $_POST['number'] );
__update_post_meta( $the_post_id, 'FLTtime', $_POST['time'] );
}

$FLTdate = get_the_time('d/m/Y');
$actdate = get_the_time('Y-m-d');
$FLTairport = $_POST['airport'];
$FLTnumber = $_POST['number'];
$FLTtime = $_POST['time'];

echo json_encode( array('FLTdate'=>$FLTdate, 'actdate'=>$actdate, 'FLTairport'=>$FLTairport, 'FLTnumber'=>$FLTnumber, 'FLTtime'=>$FLTtime));
?>

Приведите все значенияобновляются, но в #airloader все равно отображается «задница вверх».Это один из примеров, который я могу предоставить для 3 из 4 написанных мною сценариев ajax.

Есть идеи?

Чудесный

1 Ответ

0 голосов
/ 16 марта 2011

Вы проверили второй параметр вашей функции ошибки?

См .: http://api.jquery.com/jQuery.ajax/

error (jqXHR, textStatus, errorThrown) ..., строка, описывающая тип ошибкиэто произошло и необязательный объект исключения, если таковой произошел.Возможные значения для второго аргумента (кроме нуля): «timeout», «error», «abort» и «parsererror»....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...