Довольно смущающий, сколько времени я трачу попытку добраться для загрузки zipfile с кнопки....
<button type='button' id='button-download'>download zipfile</button>
$("#button-download").live("click", function() {
$.get("http://localhost/admin/zip/002140.zip"); // doesn't work?
})
Мне нужно что-то пуленепробиваемое здесь, вот почему я спрашиваю здесь, спасибо.
Используйте простую ссылку:
<a href="http://localhost/admin/zip/002140.zip" id="button-download">download zipfile</a>
. Тогда он будет работать нормально (даже «пуленепробиваемый») без доступного JavaScript. Он также предлагает больше традиционных возможностей, которые пользователи могут ожидать от ссылки для загрузки, например, щелчок правой кнопкой мыши с сохранением как или перетаскивание.
Вы, конечно, можете использовать CSS, чтобы он выглядел как кнопка вместо ссылки. Но что это на самом деле , так это ссылка. Вот как это должно быть размечено.
Это отправка запроса AJAX.
Я не пробовал, но теоретически это должно работать. Если вы попытаетесь перейти к месту, где находится загруженный файл, он предложит вам загрузить, а не перенаправит вас на эту страницу.
<button type='button' id='button-download'>download zipfile</button>
$("#button-download").live("click", function() {
window.location = "http://localhost/admin/zip/002140.zip";
})
Вы должны установить свойство location.href
, чтобы вызвать навигацию:
$("#button-download").live("click", function() {
location.href = "http://localhost/admin/zip/002140.zip";
});
У вас также может быть простой элемент
, оформленный как если бы это была кнопка, таким образом, даже пользователи, у которых отключен JavaScript, смогут загрузить файл.