2010-11-22 8 views
0

私はtelerikのRadUploadコントロールを使用しています。 Radのアップロードをページに追加し、1つのaspのテキストボックスを追加しました。私がしたいのはです。OnClientFileSelectedイベントが選択されたファイルパスがクライアントサイドのaspテキストボックスに追加されます。私は以下の方法を試しましたが、ファイル名、つまりtest.textまたはtest.docしか取得できませんでした。私は "C:\ folder1 \ folder2 \ test1.txt"のようなASPのテキストボックスにパス全体を追加したいと思います。私はこれをどのように行うべきですか?クライアントは、次のサーバーに関する情報を持っているので、アドバンスクライアントのファイルパス全体を取得する方法クライアントサイドのaspテキストボックスでRadUploadコントロールを

+0

が重複する可能性をconcatonate質問/ 1130560/get-full-file-with-fileupload-controlファイル) – NotMe

+0

多くのセキュリティ上の理由から、アップロードするファイルの完全なクライアントパスを取得することはできません。今や、ブラウザのバージョンによっては、古いブラウザではそのパスを入力する可能性があります。最終的には、この情報はあまりにも危険で、サーバーにとっては価値がないと感じています。 – NotMe

+0

@Chrisでは、クライアントに価値がほとんどないか、まったく価値がありません。 –

答えて

2

function fileSelected(radUpload, eventArgs) 
{ 
    var input = eventArgs.get_fileInputField().value; 
    document.getElementById("<%= txtPath.ClientID %>").value=input; 
} 

おかげであなたは少し余分な助けを借りずにそれをクライアント側を行うことはできません。ファイルパスを格納するために、サーバー側から非表示のフィールドを設定してみてください。

HiddenField1.Value = HttpContext.Current.Server.MapPath("~/my_upload_directory/") 

は、クライアント側で、あなただけの[のFileUploadコントロールを使用してファイルのフルパスを取得](http://stackoverflow.com/のHiddenField1.valuetxtPath.value

var fullPath = document.getElementById("<%= HiddenField1.ClientID %>").value + document.getElementById("<%= txtPath.ClientID %>").value; 
+0

Chrisは正しいですが、それはブラウザのバージョンに依存します。 IE8は私に完全な道を与えますが、Firefoxはそうしません。ご協力いただきありがとうございます –

関連する問題