プロジェクト

全般

プロフィール

Enhancement(機能追加・改善) #4276

iOS 11.3 での値が設定されていない <input type="file"> を ajax で送信できない問題を回避する

kaoru nishizoe7ヶ月前に追加. 7ヶ月前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2018-05-11
期日:
進捗率:

100%


説明

Overview (概要)

https://stackoverflow.com/questions/49578686/my-ajax-request-stopped-working-properly-on-ios-11-3/49631048

Spec (仕様)

ajax 通信にて FormData を利用している箇所に下記コードを埋め込んで回避する。

    for (var index = 1; index <= 3; index++)
    {
      var photo = $('#diary_photo_' + index).val();
      if (photo == null || photo == '') {
        if (typeof fd.delete != "undefined"){
          fd.delete('diary_photo_' + index);
        }
      }
    }

下記の部分については、 iOS 11.01 において FormData.delete がサポートされていないことを回避するために分岐する。
参考: https://lab.syncer.jp/Web/API_Interface/Reference/IDL/FormData/delete/

typeof fd.delete != "undefined" 

21318FF6-435D-4ACB-BC0E-0A26E2E4B1F5.png 表示 (113 KB) isao sano, 2018-05-16 15:50

7EF59F78-1079-4E6D-A28D-4DAE511C9A4D.png 表示 (45 KB) isao sano, 2018-05-16 15:53


関連するチケット

関連している opMessagePlugin - Bug(バグ) #4277: iOS 11.0.1 にてメッセージを送信するとエラーが画面上部に表示される New(新規) 2018-05-23

履歴

#1 kaoru nishizoe7ヶ月前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

https://github.com/tejimaya/opMessagePlugin/pull/22
にてプルリクエストしました

#2 isao sano7ヶ月前に更新

試験いたしました。
iOS 11.0.1 の端末でのみ、メッセージ送信時に下記の挙動になります。

エラー

1. iOS 11.0.1 にてメッセージを送信すると以下のエラーが画面上部に表示されます。(投稿自体は完了します)

2. 再度投稿を行うと下記のエラー画面に遷移します。(投稿自体は完了します)

#3 isao sano7ヶ月前に更新

#4276-2 の現象はこの修正が行われる前のソースでも発生が確認できました。

#4 kaoru nishizoe7ヶ月前に更新

  • ステータスRejected(差し戻し) から Pending Merge(マージ待ち) に変更
  • 進捗率50 から 80 に変更

#4276-2 の現象については下記チケットにて別途対応する
http://redmine.openpne.jp/issues/4277

#5 kaoru nishizoe7ヶ月前に更新

  • 関連している Bug(バグ) #4277: iOS 11.0.1 にてメッセージを送信するとエラーが画面上部に表示される を追加

#6 kaoru nishizoe7ヶ月前に更新

  • ステータスPending Merge(マージ待ち) から Fixed(完了) に変更
  • 進捗率80 から 100 に変更

マージしました

他の形式にエクスポート: Atom PDF