1

私はEPPlusExcelファイルを作成してデータを提供するために使用しています。また、作成するファイルのパスと名前をユーザーが選択できるようにします。ファイルはクライアントコンピュータに保存する必要があります。

RadTreeView使用する場所がありますcontext menu。見せたいpop-up window

<telerik:RadTreeView 
    runat="server" 
    ID="TreeViewUnit" 
    OnContextMenuItemClick="TreeViewUnit_OnContextMenuItemClick"
    meta:resourcekey="TreeViewUnitResource1">
    <DataBindings>
         <telerik:RadTreeNodeBinding />
         </DataBindings>
         <ContextMenus>
         <telerik:RadTreeViewContextMenu runat="server" 
                    ID="cmTreeViewUnitContextMenu">
                     <Items>
                          <telerik:RadMenuItem Text="Export" Value="Export"> 
                          </telerik:RadMenuItem>
                          <telerik:RadMenuItem Text="Import" Value="Import">  
                          </telerik:RadMenuItem>
                      </Items>
          <CollapseAnimation Type="none"></CollapseAnimation>
       </telerik:RadTreeViewContextMenu>
                        </ContextMenus>
</telerik:RadTreeView>

これどうやってするの?私は現在アイデアがありません=/jqueryライブラリをチェックしましたが、何も見つかりませんでした。おそらく、smthを見逃しました。

4

1 に答える 1

2

ブラウザのセキュリティでは、これを行うことはできません

私があなたを正しく理解しているなら、あなたがやろうとしていることは、クライアントコンピュータのフォルダ構造を読み、それをユーザーに表示して、ユーザーが特定のフォルダとファイルの名前を選択できるようにすることです。

ユーザーは、ファイルが転送されたときに[ファイルの保存]をクリックした場合にのみフォルダーを選択できます。これは、その選択がブラウザー自体によって提供されるためです。ただし、[ファイルを開く]を選択すると、ファイルが一時フォルダー(FirefoxおよびIE)またはデフォルトのダウンロードフォルダー(Chrome)に配置される場合があります。サーバーまたはブラウザーのいずれかで実行されるアプリケーションでクライアントマシンのフォルダー構造を提供できる方法は(セキュリティ上の理由から)ありません。また、ユーザーが[保存]または[開く]のどちらを押すかを制御する方法はありません。

ユーザーにファイル名を尋ねることだけが可能です。ただし、これはファイルがその名前で転送されることを意味し、ユーザーは保存ダイアログでファイルの名前を変更できます。

ブラウザがブラウザ内で直接Excelファイルを開くのを防ぎますか?

Excelファイルを転送しているので、ファイルを保存する可能性を回避するブラウザ(Internet Explorer)内で直接確認ダイアログなしで開く可能性があることに注意する必要があります。サーバー側でこれを防ぐには、特定のmimeタイプやその他の設定を行って、ユーザーにファイルの処理方法を尋ねるようにブラウザーを説得します。

この問題を回避するには、このStackoverflowの質問を参照してください

于 2013-01-11T13:39:14.637 に答える