В представлении Create, которое правильно начинается с ...
@using (Html.BeginForm("Create", "Song", FormMethod.Post, new { enctype = "multipart/form-data" }))
и среди нескольких других полей есть ...
<div class="editor-field">
<input type='file' name="SongFileUpload" id="SongFileUpload" onchange="readURL(this);" />
@Html.ValidationMessageFor(model => model.SongData)
</div>
заканчивая
<p>
<input type="submit" value="Create" />
</p>
если я просматриваю и выбираю имя файла, которое содержит начальные и конечные круглые скобки внутри имени ... когда я нажимаю кнопку "Создать", чтобы отправить его ... когда просто запускается сервер localhost, который VS2010 предоставляет ... он просто переходит прямо к ошибке IE (v10) ....
>This page can't be displayed
>
>•Make sure the web address http://localhost:63129 is correct.
>•Look for the page with your search engine.
>•Refresh the page in a few minutes.
Сначала я подумал, что это может быть потому, что имя файла начинается с символа «@». но это не так, поскольку я могу выбрать другое имя файла, которое имеет такую же длину, но не содержит круглых скобок и переходит в
[HttpPost]
public ActionResult Create( )
Вроде и надо и все работает как надо.
Что, черт возьми, здесь происходит?
Ниже приведен код JavaScript для функции "readURL ()".
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#SongMimeType').attr('value', input.files[0].type);
$('#SongData').InnerHtml = (e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
Я предполагаю, что функция JavaScript - это то, что может взорваться ??
Как мне исправить это, чтобы обрабатывать эти имена файлов в круглых скобках ??
<input type="file"
control. При его вызове просто появляется типичное диалоговое окно «Файл-› Открыть ». Какие еще события похожи на событие onchange, с которыми мне приходится работать? - person TheGDog   schedule 26.06.2013This page can't be displayed
- person TheGDog   schedule 26.06.2013<input>
, где тип - это поле файла, и он вернул сообщение об ошибке, объясняющее, что оно содержит недопустимые символы. Итак, сегодня я выясняю, как и где перехватить имя пути к файлу и передать его через кодировку URL, как вы предложили. - person TheGDog   schedule 26.06.2013