У меня есть функция JQuery сделать так:Проходя весь тег в Javascript в качестве параметра
$('#<%=FileUpload1.ClientID%>').change(function() {
var l = document.getElementById('popap');
l.click();
readURL(this);
});
А вот функция readURL:
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#before').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
Как вы можете видеть на события изменения Я передаю это как параметр функции readURL, а затем получаю доступ к его свойствам внутри функции readURL.
Мой вопрос в том, как я мог бы сделать то же самое, если это событие было вызвано одним нажатием кнопки? Только в этот раз мне нужно перейти к функции readURL, которая была выбрана в элементе загрузки файла. Я пробовал что-то вроде:
$('#<%=btnEdit.ClientID%>').click(function (e) {
e.preventDefault();
var l = document.getElementById('popap');
l.click();
readURL(document.getElementById("FileUpload1"));
});
Но это ничего не значит, изображение вообще не показано ...?
Что я делаю неправильно?
Действительное ID, как вы правильно закодированы ваш первый образец кода, * не * "FileUpload1" - это '<% = FileUpload1.ClientID%>' , Вы должны извлечь фактический идентификатор из ASP и использовать его, потому что это фактический идентификатор, используемый в разметке, которую видит браузер. – Pointy
Да, это была проблема, спасибо большое !!! :) – User987