0

私はtelerikradUploadコントロールを使用して、Gmailファイルのアップロードのようなページを作成しています。次のコードを使用してdisplay:noneradUploadコントロールを開きます。

    <telerik:RadUpload ID="RadUpload1" Runat="server"   OnClientAdded="onClientAdded" ControlObjectsVisibility="None" Localization-Select="abcd"></telerik:RadUpload>
<script type="text/javascript">
var $fileInput;
function onClientAdded(sender, args) {
$fileInput = $telerik.$(args._fileInputField);
}
function OpenDialog() {
$fileInput.click();
uploadTimer();
}
</script>

彼は私のUploadTimer関数です:

function uploadTimer() {
try {
var t = setTimeout("uploadTimer()", 500);
//var v = $("#RadUpload1").val();
var upload = $find("<%= RadUpload1.ClientID %>");
value = upload.getFileInputs()[0].value;
//IE?
if (navigator.userAgent.indexOf("MSIE") != -1) {
//if (value != '') {
$("#btnSubmit").click();//}
}
else//non IE?
{if (value != '') {
$("#btnSubmit").click();}
}}
catch (err) {}}

このボタンをクリックしてradUploadを表示すると、タイマーが呼び出され、ボタンサーバー側のクリック機能が呼び出され、選択したファイルをサーバーに保存しますが、IEにファイルがアップロードされていません。何が問題になっていますか?

<input type="button" value="select file" style="font-family:Tahoma;" onclick="OpenDialog()" />
4

1 に答える 1

1

AJAX パネルまたは UpdatePanel でコードをラップしていますか? そのコントロールで AJAX を使用して更新を実行することはできません。

代わりに、AJAX によるファイルのアップロードが必要な場合は、Gmail と同様に、RadAsyncUpload を使用します: http://www.telerik.com/help/aspnet-ajax/asyncupload-overview.html

于 2012-09-27T12:31:11.240 に答える