簡體   English   中英

jQuery ajax發布回調函數未執行

[英]JQuery ajax post callback function not executed

我已經編寫了一個非常簡單的javascript方法,該方法應該將ajax請求發送到服務器,並最終執行回調函數。 問題是給定的回調未執行。 我還在chrome開發人員工具中看到執行了請求,並返回了所希望的JSON。 我也將內容類型設置為application / json。

這是我使用的代碼:

this.checkAvailability = function(){
    console.log('Before test');
    $.post('/Roomanizer-Website/Reservation', {
        action: 'checkavailability',
        categoryname: $('#categoryname').val(),
        roomcount: $('#roomcount').val(),
        start: $('#start').val(),
        end: $('#end').val()
    }, function(data){
        console.log('callback');
        console.log(data);
        if(data.available == 'true'){
            $('#start_confirmation').html(data.arrival);
            $('#end_confirmation').html(data.leaving);
            $('#price_confirmation').html(data.price);
            this.nextStep();
        } else {
            alert('There are no free rooms during your chosen period.');
        }
    }, 'json');
};

“測試前”寫在控制台上,但不寫在“回調”上。 但是正如我已經說過的那樣,該請求已執行,並返回正確的JSON:

{arrival : '20/06/2012', leaving : '28/06/2012', price: '0.0', available: 'true'}

最后,我將顯示http-header:

Request URL:http://localhost:8080/Roomanizer-Website/Reservation
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:application/json, text/javascript, */*; q=0.01
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Connection:keep-alive
Content-Length:97
Content-Type:application/x-www-form-urlencoded
Cookie:JSESSIONID=AF1302ECA526216D8207F365F6802814
Host:localhost:8080
Origin:http://localhost:8080
Referer:http://localhost:8080/Roomanizer-Website/Controller?action=booking
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.52 Safari/536.5
X-Requested-With:XMLHttpRequest
Form Dataview URL encoded
action:checkavailability
categoryname:Economy
roomcount:1
start:20/06/2012
end:28/06/2012
Response Headersview source
Content-Length:81
Content-Type:application/json;charset=ISO-8859-1
Date:Mon, 11 Jun 2012 12:19:45 GMT
Server:Apache-Coyote/1.1

有人知道解決這個問題很熱嗎?

PS:我正在使用JQuery 1.5.2

解決了問題,因為JSON-Parser似乎不接受單引號,所以我將返回的字符串更改為

{"arrival":"20/06/2012","leaving":"27/06/2012","price":"80.0", "available":"true"}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM