jquery-2.1.4-PATCH_003 を適用すると一部の画面のレイアウトが崩れる場合があります。

 
jquery-2.1.4-PATCH_003 を適用すると一部の画面のレイアウトが崩れる場合があります。

以下の修正による影響で、jquery-2.1.4-PATCH_003 を適用すると一部の画面のレイアウトが崩れる場合があります。
* https://issue.intra-mart.jp/issues/32481

本 FAQ では上記の修正に関する以下の内容について記載します。
1. 影響範囲
2. 恒久的な対処方法
3. 暫定的な対処方法
4. jquery-2.1.4-PATCH_003 の適用前の状態に戻す方法


【1. 影響範囲】

   TableMaintenance のレコード編集画面でテキストエリアタグが表示される場合に、画面のレイアウトが崩れることがあります。

   また、ユーザモジュールやカスタムスクリプト等で、jQuery の API に対して HTML として正しくない文字列を渡していた場合に、画面のレイアウトが崩れることがあります。
   具体的に、どのような文字列を渡していた場合に影響を受けるかについては、以下の「この修正による影響について」を参照ください。
   * https://issue.intra-mart.jp/issues/32481



【2. 恒久的な対処方法】

   1. TableMaintenance のレコード編集画面で画面のレイアウトが崩れる場合

      -> 2021-10-20 (水)にリリースされた以下の正式パッチをご利用ください。
         * https://issue.intra-mart.jp/issues/33564

         正式パッチをご利用いただく前に【3. 暫定的な対処方法】に記載されている方法で対処を行っていた場合には、対処前の状態に戻してから正式パッチを適用してください。

   2. ユーザモジュールやカスタムスクリプト等を作成していて画面のレイアウトが崩れる場合

      -> 以下の「この修正による影響について」を参照し、jQuery の API に対して HTML として適切な文字列を渡すように修正してください。
         * https://issue.intra-mart.jp/issues/32481



【3. 暫定的な対処方法】

   1. TableMaintenance のレコード編集画面で画面のレイアウトが崩れる場合

      -> 暫定的には、<%RESIN_HOME%>/webapps/<%warの展開ディレクトリ%>/WEB-INF/jssp/platform/src/tablemaintenance/views/table_edit.js を修正していただくことで、対処可能です。
         2021-10-20 (水)にリリースされる正式パッチを適用していただければ、この対処は不要となります。
         もし、この暫定対処を行った後に正式パッチを適用される場合は、対処前の状態に戻してから正式パッチを適用してください。
         具体的な対処方法は、<%RESIN_HOME%>/webapps/<%warの展開ディレクトリ%>/WEB-INF/jssp/platform/src/tablemaintenance/views/table_edit.js を以下の様に修正してください。

            1. 以下のように 76 行目付近に、「var rxhtmlTag = /<(?=textarea)(([\w:]+)[^>]*)\/>/ig;」を追記します。
               ※ 2016 Winter ~ 2021 Summer は 76 行目付近です。
               ※ 2016 Summer は 78 行目付近です。
               ※ 2015 Summer ~ 2016 Spring は 75 行目付近です。
               ```
               var RECORD_EXPORT_URL;
               var RECORD_IMPORT_URL;

               // ここから追加
               var rxhtmlTag = /<(?=textarea)(([\w:]+)[^>]*)\/>/ig;
               // ここまで追加

               /**
                * 初期化処理
                *
                * @validate tablemaintenance/views/table_edit_validator#init
                * @onerror handleErrors
                */
               function init(req) {
               ```

            2. 以下のように 849 行目付近の、「return doc.getXmlString();」と書かれた行を以下のように更新します。
               ※ 2020 Summer ~ 2021 Summer は 849 行目付近です。
               ※ 2020 Spring は 848 行目付近です。
               ※ 2019 Summer ~ 2019 Winter は 780 行目付近です。
               ※ 2016 Winter ~ 2019 Spring は 746 行目付近です。
               ※ 2016 Summer は 829 行目付近です。
               ※ 2015 Summer ~ 2016 Spring は 826 行目付近です。
               ```
                   inputHidden.setAttribute("id", "registno_" + String(rowNo));
                   inputHidden.setAttribute("class", "registno");
                   tr.appendChild(inputHidden);

               // ここから更新
                   var xmlString = doc.getXmlString();
                   return xmlString.replace(rxhtmlTag, "<$1></$2>");
               // ここまで更新
               }
               ```



【4. jquery-2.1.4-PATCH_003 の適用前の状態に戻す方法】

   1. jquery-2.1.4-PATCH_003 以降を適用した後に適用前の状態に戻したい場合

      -> 添付の jquery_2_1_4_patch_002.imm をユーザモジュールとして追加していただくことで、jquery-2.1.4-PATCH_003 の適用前の状態に戻すことが可能です。
         このユーザモジュールを、TableMaintenance のレコード編集画面で画面のレイアウトが崩れる問題を回避するために利用している場合は、2021-10-20 (水)にリリースされた正式パッチの適用後に、必ずアンインストールしてください。
         ---------------------------------------------
         ■インストール方法
         ---------------------------------------------
         1. IM-Jugglingを起動します。
         2. 既存のプロジェクト(juggling.im)ファイルを開きます。
         3. 「ユーザモジュール」タブを選択し、右上にある「+」アイコンをクリックします。
         4. jquery_2_1_4_patch_002.imm ファイルを追加します。
            インストール方法は「セットアップガイド」を参照してください。
            https://www.intra-mart.jp/document/library/iap/public/setup/iap_setup_guide/texts/create_war/user_module.html
         5. WARファイル(※1)、および、静的ファイル(※2)の出力を行ってください。
         6. アンデプロイを行ってください。
             https://www.intra-mart.jp/document/library/iap/public/setup/iap_setup_guide/texts/uninstallation/index.html#war
         7. アンデプロイ後、※1、および、※2のファイル群をデプロイしてください。
            https://www.intra-mart.jp/document/library/iap/public/setup/iap_setup_guide/texts/deploy/index.html
         ---------------------------------------------
         ■アンインストール方法
         ---------------------------------------------
         1. IM-Jugglingプロジェクトを開き、今回提供分のユーザモジュールを削除してください。
            ユーザモジュール選択後に右上の「×」アイコンをクリックすることで削除可能です。
         2. WARファイル(※3)、および、静的ファイル(※4)の出力を行ってください。
         3. アンデプロイを行ってください。
             https://www.intra-mart.jp/document/library/iap/public/setup/iap_setup_guide/texts/uninstallation/index.html#war
         4. アンデプロイ後、※3、および、※4のファイル群をデプロイしてください。
            https://www.intra-mart.jp/document/library/iap/public/setup/iap_setup_guide/texts/deploy/index.html




-- 対象 ------------------------------------------------------------------------
iAP/Accel Platform/2021 Summer
iAP/Accel Platform/2021 Spring
iAP/Accel Platform/2020 Winter
iAP/Accel Platform/2020 Summer
iAP/Accel Platform/2020 Spring
iAP/Accel Platform/2019 Winter
iAP/Accel Platform/2019 Summer
iAP/Accel Platform/2019 Spring
iAP/Accel Platform/2018 Winter
iAP/Accel Platform/2018 Summer
iAP/Accel Platform/2018 Spring
iAP/Accel Platform/2017 Winter
iAP/Accel Platform/2017 Summer
iAP/Accel Platform/2017 Spring
iAP/Accel Platform/2016 Winter
iAP/Accel Platform/2016 Summer
iAP/Accel Platform/2016 Spring
iAP/Accel Platform/2015 Winter
iAP/Accel Platform/2015 Summer
--------------------------------------------------------------------------------

FAQID:1120
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
Powered by Zendesk