2013-11-12 1 views
0

У меня есть частичный вид, в котором есть входные файлы и кнопка отправки. Когда я пытаюсь отключить входные данные файла при нажатии кнопки отправки, HttpPostedFiles становится пустым в контроллере, я новичок в JQuery, поэтому я предполагаю, что это может повлиять на поведение кнопки отправки по умолчанию. Когда я делаю unbind on click, все это отменяется, входные файлы снова включаются. Следовательно, я попытался отключить ввод файлов в mousedown моей кнопки отправки, аналогичная проблема возникла снова. Когда я удаляю этот код, я получаю опубликованные файлы.Событие 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); 


    }); 
}); 

Любые идеи, как я могу отключить свои входы файлов (тип ввода = «Файл») без поведение кнопки представить время перепутались?

Заранее спасибо.

+0

Почему вы делаете это в mousedown? сделать это в щелчке? – Sakthivel

+0

Отключенные элементы формы не отправляются при отправке формы - поэтому вам придется отключить их после отправки вашей формы. – CBroe

+0

вы можете предоставить нам любой код, который вы пробовали? – Bellash

ответ

0

Я решил проблему, отключив событие щелчка файла ввода нажатием кнопки отправки, вместо того, чтобы отключить весь элемент управления, я также сделал его полупрозрачным, чтобы пользователь почувствовал, что он отключен.

$('#file1').on("click", false); 
    $('#file2').on("click", false); 

    $('#file1').css("opacity", "0.5"); 
    $('#file2').css("opacity", "0.5"); 

Отключить весь элемент управления было сделано сообщение null.

Смежные вопросы