В целях безопасности браузеры этого не допускают, то есть JavaScript в браузере не имеет доступа к файловой системе, однако, используя API файлов HTML5, только Firefox предоставляет свойство mozFullPath
, но если вы попытаетесь получить значение, оно вернет пустая строка:
$('input[type=file]').change(function () {
console.log(this.files[0].mozFullPath);
});
Поэтому не теряйте время.
edit: Если вам нужен путь к файлу для чтения файла, вы можете использовать API FileReader . Вот связанный вопрос о SO: Предварительный просмотр изображения перед его загрузкой.
Оказалось, что некоторые из моих проблем можно решить, установив для кнопки сброса значение типа reset
, которое соответствует структуре проверки. Это не работает, когда происходит неудачная отправка (из-за недопустимых полей), и в этом случае я использовал следующую функцию ( селектор
- это строка селектора jQuery):
resetFieldValidation: function (selector) {
var fields = $(selector);
fields.removeClass('input-validation-error').addClass('input-validation-valid');
fields.siblings('.field-validation-error').text('').removeClass('field-validation-error').addClass('field-validation-valid');
fields.each(function () {
$(this)[0]['__MVC_HasTextChanged'] = false;
$(this)[0]['__MVC_HasValidationFired'] = false;
});
}
Последняя часть Функция устанавливает значения, указывающие структуре проверки, что поля не изменились и ранее не вызывали ошибку проверки.