Я редактирую свой первоначальный ответ, так как я не совсем понял, что именно вы пытаетесь сделать. Вы можете создать тип ввода = «файл», не используя jQuery/javascript, чтобы скрыть исходный элемент и имитировать щелчок на нем. Вы можете использовать стандартный HTML/CSS, чтобы сделать это ...
CSS:
.upload {
height:25px;
width:70px;
background:#ccc;
color:#fff;
overflow:hidden;
text:'Upload';
}
.upload input {
display: block !important;
width: 70px !important;
height: 25px !important;
opacity: 0 !important;
overflow: hidden !important;
}
#uploadText {
left: 6px;
position: relative;
top: -45px;
}
HTML:
<div class="upload">
<input type="file" name="upload" />
<h3 id="uploadText">Upload</h3>
</div>
Учитывая это не идеальные типы и у меня нет будущего в качестве графического дизайнера , их достаточно, чтобы продемонстрировать, как вы можете изменить стиль стандартного типа ввода = «файл», не требуя javascript.
Мне любопытно, почему вы используете '.trigger ('click')'? – Malkus
Похоже, вы не [думаете об Угловом пути] (http://stackoverflow.com/a/15012542). – Avalanche
@Malkus У меня есть файловый загрузчик. Я добавил пользовательскую кнопку. Затем я спрятал стандартную кнопку. С trigger() Я стреляю по старой кнопке файлового загрузчика –