У меня есть частичный вид, в котором есть входные файлы и кнопка отправки. Когда я пытаюсь отключить входные данные файла при нажатии кнопки отправки, HttpPostedFiles становится пустым в контроллере, я новичок в JQuery, поэтому я предполагаю, что это может повлиять на поведение кнопки отправки по умолчанию. Когда я делаю unbind on click, все это отменяется, входные файлы снова включаются. Следовательно, я попытался отключить ввод файлов в mousedown моей кнопки отправки, снова возникла проблема. Когда я удаляю этот код, я получаю опубликованные файлы.
Мое мнение содержит:
@{ Html.BeginForm("ActionName", "ControllerName", FormMethod.Post,
new { id "fileUploader",enctype "multipart/form-data" });}
<div>
<table>
<tr><td><label for="file1">Filename:</label>
<input type="file" name="files" id="file1" /></td></tr>
<tr><td><label for="file2">Filename:</label>
<input type="file" name="files" id="file2" /></td></tr>
<tr><td> <input type="submit" id="btnUpload" name="Command" Value="Upload"/> </td></tr> </table>
</div>
@{ Html.EndForm();}
Мой файл сценария содержит:
$(document).ready(function () {
$('#btnUpload').click(function (e) {
$('#file1').attr('disabled', true);
$('#file2').attr('disabled', true);
});
});
Любые идеи, как я могу отключить входные файлы (input type = "file"), если поведение кнопки отправки не испортилось?
Заранее спасибо.
Я решил проблему, отключив событие щелчка входа файла при нажатии кнопки отправки, вместо того, чтобы отключить весь элемент управления, я также сделал его полупрозрачным, чтобы пользователь почувствовал, что он отключен.
$('#file1').on("click", false);
$('#file2').on("click", false);
$('#file1').css("opacity", "0.5");
$('#file2').css("opacity", "0.5");
Отключение всего элемента управления делало опубликованный файл нулевым.