爲了讓CSS樣式上載控制按鈕我創造的這個fakebutton.On點擊假按鈕我觸發文件上傳控制的點擊事件。 當我使用jquery ajax時,它給我一個錯誤htmlfile訪問被拒絕。 但是當我使用Html.BeginForm它不會給我錯誤,也不會工作。FileUpload控件使用Html.BeginForm/Ajax.BeginForm不起作用。(HTMLFILE訪問,在IE拒絕)的CSS樣式上傳控制按鈕
<div id="divUploadForm">
@using (Html.BeginForm("UploadAction", "HomeController",new AjaxOptions()
{
UpdateTargetId = "divUploadForm",
InsertionMode = InsertionMode.Replace
}))
{
<fieldset>
<input type="text" id="fakeupload" name="fakeupload" class="fakeupload" />
<input type="button" value="Browse" id="BrowseBtn" />
<input type="file" name="file" id="files-to-upload" onchange="this.form.fakeupload.value = this.value;" style="display: none" />
<input type='submit' id='upload-files' value='Save'/>
</fieldset>
}
</div>
<script type="text/javascript">
$(function() {
$('#BrowseBtn').click(function() {
$('#files-to-upload').trigger('click');
});
$('#fakeupload').click(function() {
$('#files-to-upload').trigger('click');
});
});
</script>
更新:也用
@using (Html.BeginForm("UploadAction", "HomeController", FormMethod.Post, new { enctype = "multipart/form-data", id = "UploadForm" }))
{
...
}
不過它提供了 「錯誤:訪問被拒絕。」
:Thanks.Earlier我也做了同樣的事情,但它仍然給我「錯誤:訪問被拒絕」。 –
@Mangesh Pimpalkar,這可能與您試圖觸發隱藏文件元素上的點擊事件有關。 –