【问题标题】:Problems with AJAX call and phonegapAJAX 调用和 phonegap 的问题
【发布时间】:2012-04-08 06:33:29
【问题描述】:

我正在用 javascript 开发一个 webapp,然后使用 PhoneGap 使其成为“原生”。在这个应用程序中,我需要导出为 PDF,为此我通过 AJAX 调用使用 PHP 脚本。在这个 PHP 调用中,我发送了大量信息,包括一个巨大的 html 表格和两个 SVG 字符串,每个字符串代表一个图表。

这是我在 javascript 中的 AJAX 调用:

  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。

提前致谢

【问题讨论】:

    标签: ios ajax web-applications cordova ios-simulator


    【解决方案1】:

    试试这个:

    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!' );
    }
    );
    

    【讨论】:

    • 我,谢谢你的回答。不幸的是,也已经尝试过,但结果相同。
    猜你喜欢
    • 2014-01-01
    • 2011-11-22
    • 2016-03-20
    • 1970-01-01
    • 1970-01-01
    • 2014-11-21
    • 2013-08-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多