2017-12-06 9 views
1

POSTshttpbin Request & Response ServiceというHTML形式のExcel Webアドインをテストすると、フォームは送信されません。<Form>をMacの場合Excel 2016またはiPadの場合Excel

Mac版Excel 2016は、High Sierra ver 10.13.1で動作する15.39(171010)です。私はiPad用のExcelで同じ問題を見てきました。

フォームにPOSTメソッドを使用すると、ExcelアドインとMacおよびiPadのExcel 2016との互換性が失われますか?

サイトへの呼び出しがあり、ブラウザでページが開きます。ただし、POSTはありません。これは、我々はhttpbin.orgページに表示されるものである - 方法GETと見られていないパラメータとその値の点に注意してください。

{ 
    "Host": "httpbin.org", 
    "Upgrade-Insecure-Requests": "1", 
    "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36" 
    "method": "GET", 
    "origin": "<ip-address-here>", 
    "url": "https://httpbin.org/anything" 
} 

この使い方:

<script type="text/javascript"> 
    $("#testForm").submit(); 
</script> 

<form method="POST" id="testForm" action="https://httpbin.org/anything" accept-charset="UTF-8" target="_blank"> 
    <input type='hidden' name='mergeDataFormat' value='csv'> 
    <input type="hidden" name="mergeData" id="mergeData" value='Name,Street,"City, State",ZIP Code'> 
    <input type="submit" value="Send" id="submitForm" /> 
</form> 

に詳細については、この記事を参照してください: Why doesn’t the form not POST in Excel 2016 for Mac?

AppDomainは次のように設定されました:

<AppDomains> 
    <AppDomain>https://httpbin.org/</AppDomain> 
</AppDomains> 

以下に示すようにonsubmitハンドラを試しましたが、変更はありません。

<form method="POST" id="testForm" onsubmit="datasubmit()" action="https://httpbin.org/anything" accept-charset="UTF-8" target="_blank"></form> 

<script type="text/javascript"> 
    function datasubmit() { 
     console.log("Your details have submitted.........."); 
    } 
</script> 

Mac用のExcel 2016以外のブラウザでテストした場合、同じコードが正常に動作します。 Excel Onlineでも正常に動作します。 Mac用のExcel 2016でのみ失敗します。

+0

これはサポートする必要があります。フォームが提出されたときにネットワークトリップが表示されますか?どのようにポストに電話していますか?フォームアクションまたはサブミットハンドラ(関数)を呼び出しますか?後者を試して、送信時のハンドラを使ってネットワークを呼び出すことができます。 –

+0

質問を詳細に更新しました。ありがとう! – RickInLosAngeles

+0

オン・サブミット・ハンドラ(関数)を試してみることを推奨します。私たちはそれを試しました - 質問の下部に結果を見てください。同じ問題を起こす。その他のアイデアは高く評価されます。そして、助けてくれてありがとう。 – RickInLosAngeles

答えて

2

これは、アドインマニフェストのAppDomainセグメントでの相対パスの使用に関連していると思います。 https://httpbin.org/anythingなどの相対パスは許可されず、代わりにドメイン名https://httpbin.org/を使用する必要があります。アプリケーションの一部として新しいウィンドウを開く必要がありますか、別のフレームにフォームを投稿することはできますか?言い換えれば、フォームの望ましい動作とアクションを説明することができますか?

+0

AppDomainに変更が加えられましたが、残念ながら結果が変更されませんでした。この投稿を更新しました。 はい、データを使用する次の手順は別のサイトで行われるため、アプリの一部として新しいウィンドウを開く必要があります。 POSTメソッドは、フォーム内のデータを送信するために使用されます。サイトhttpbin.orgはリクエストを表示するためだけに使用されていますが、POSTはMac用のExcel用ではないようです。言い換えれば、複数のプラットフォームとホストでこれをテストした後、私たちの懸念事項は次のとおりです。なぜPOSTメソッドはExcel for Macでのみ失敗するのですか? – RickInLosAngeles

+0

私はengから得た最新の情報に基づいています。チームの場合、Mac上のPOSTに関する問題は、今月のリリースで対処されます。しかし、新しいウィンドウはWebKitのコントロールブラウザであり、フルIEブラウザと比較していくつかの動作に違いがあるかもしれません(使用しているすべてがHTMLアクションの場合は影響を受けません)。修正プログラムで問題が解決されるようにするためには、電子メールの連絡先を使用してアドインの詳細(試してみるとサンプル)を共有できる方がいいでしょう。 –

+0

それを聞いてうれしい!情報のあるプロジェクトがあなたの電子メールに送られました。メールを受け取ったことを確認し、必要な場合はお知らせください。ありがとう。 – RickInLosAngeles

関連する問題