1

問題の縮小バージョンを作成して、それが解決できるかどうかを確認しました。もちろん、多くのフォーラム検索を試しましたが、残念ながら、どれも機能する解決策を持っていないようです.

問題は、iPhone 3Gs v5.0.1 からのフォームの送信に失敗し (他の iPhone ではまだテストしていません)、別のウィンドウが常に開きますが、php フォームにデータが渡されないようです。

コードと、送信したデータを表示できるリンクを含めました。他の誰かが自分の Android から送信できるが、iPhone から送信できないかどうか知りたいですか?

    <!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <script src="js/jquery-2.0.2.js"></script>
        <script src="js/bootstrap.js"></script>
        <script src="js/main.js"></script>
        <link href="css/bootstrap.css" rel="stylesheet">
        <style type="text/css">
            .container-narrow {
                margin: 0 auto;
                max-width: 700px;
                padding: 20px;
            }
            .container-narrow > hr {
                margin: 30px 0;
            }

            .jumbotron {
                margin: 60px 0;
                text-align: center;
            }
            .jumbotron h1 {
                font-size: 50px;
                line-height: 1;
            }

            p {
                font-size: 1.2em;
            }
        </style>
    </head>
    <body>
            <form target = "_blank" name="rating" action="http://www.stopandsearch.org/simpleupload.php" method="post" >    
            comment: <input type="text" name="comment">
            <input type="submit" value="Submit">
            </form>
    </body>
</html>

上記のコードを使用して送信すると、失敗したアップロード (空白として) を表示するためのリンクが表示されます。

iPhone が失敗したのに Android が成功したという同じ問題が発生した場合、誰かが私に知らせてくれたら本当に感謝しています。

私は多くのフォーラムを試しましたが、同じ問題を抱えているように見えますが、解決策はうまくいきません。

これに関するアドバイスは役に立ちます...

4

1 に答える 1

1

iOS ではアプリから外部 Web ページへのデータの POST が制限されていると思うので、forge.request.ajax メソッドを使用することをお勧めします (request モジュールを有効にする必要があります)。

次に、次のようなことができます。

<form id="comment" onsubmit="return false;">    
comment: <input type="text" name="comment">
<input type="button" value="Submit" onclick="send_data();">
</form>

<script type="text/javascript">
function send_data() {
  var comment = $('input[name="comment"]').val();
  if ( comment ) {
    forge.request.ajax({
      type: 'POST',
      url: 'http://www.stopandsearch.org/simpleupload.php',
      data: { 'comment': comment },
      dataType: 'text',
      success: function(data) {
        $('#comment').html( data );
      },
      error: function(error) {
        alert('Failed to save comment');
      }
    });
  }
}
</script>

このコードは ajax 経由でコメントを送信するため、ユーザーは Safari にリダイレクトされず、成功した場合はサーバーからの応答によってフォームが置き換えられます。コメントがコメント ページにも正常に表示されることがわかります。

于 2013-08-17T22:48:15.630 に答える