2012-03-23 46 views
0

我正在開發一個JavaScript的Web應用程序,然後使它與PhoneGap「原生」。在這個應用程序中,我需要導出爲PDF,爲此我通過AJAX調用使用PHP腳本。在這個PHP調用中,我發送了大量信息,其中包括一個巨大的HTML表格和兩個SVG字符串,每個字符串表示一個圖表。AJAX調用和phonegap的問題

這是我的AJAX調用中的javascript:

jQuery.ajax(
    { 
     type:'POST', 
     url: 'http://xxx.xxx.xxx.xxx/php/pdfexport.php?callback=?', 
     data: 
     { 
     dataHeader: JSON.stringify(tableHeaderEl), //First table (Small) 
     dataBody: JSON.stringify(tableBodyEl), // Second table (Large) 
     graphBar : JSON.stringify(svgBar), // First chart (Large SVG) 
     graphPie : JSON.stringify(svgPie) // Second chart (Large SVG) 
     }, 
     dataType: "json", 
     success : 
     function(result) 
     { 
      alert('Ok'); 
     } 
    } 
).error(
    function(a, b, c) 
    { 
     alert('Error exporting PDF!'); 
    } 
); 

在PHP我傾倒在日誌文件中收到下面的代碼

<?php 
    $log = fopen('temp\\log.txt', 'a'); 
    ob_start(); 
    var_dump ($_REQUEST); 
    $data = ob_get_clean(); 
    fwrite($log, $data); 
    fclose($log); 
    $result = array 
    (
    "success" => true, 
); 
    echo $_REQUEST['callback'] . "(" . json_encode($result) . ")"; 
?> 

直接在Safari中我看到一個正在運行的應用程序中的數據該日誌包含所有發送的信息,但是在使用PhoneGap創建的應用程序中,如果只發送第一個表,我會看到信息被轉儲,但如果我發送所有4個字符串,則不會發生任何事情。似乎也沒有錯誤產生,因爲沒有調用錯誤函數。 我已經尋找了一些有這種問題的人的迴應,但找不到任何東西。

有沒有人遇到過這樣的問題?

我使用xcode 4,PhoneGap 1.5和jQuery 1.7.1。

在此先感謝

回答

0

試試這個:

jQuery.ajax(
{ 
    type:'POST', 
    url: 'http://xxx.xxx.xxx.xxx/php/pdfexport.php?callback=?',  
    data: JSON.stringify({ dataHeader: tableHeaderEl , dataBody:tableBodyEl , graphBar:svgBar ,graphPie : svgPie }), 
    dataType: "json", 
    success : 
    function(result) 
    { 
     alert('Ok'); 
    } 
} 
).error(
function(a, b, c) 
{ 
    alert('Error exporting PDF!'); 
} 
); 
+0

我,謝謝您的回答。不幸的是,已經嘗試過,但結果相同。 – Zeca 2012-03-26 08:36:35