Селектор file
Селекторът :file избира елементи с
тип file, които са полета за качване на файлове.
Еквивалент на $(':file') е
$('[type=file]').
Тъй като :file не е част от CSS спецификацията,
за подобряване на производителността в съвременните
браузъри е по-добре да се използва
[type='file'] вместо него.
Синтаксис
Ето как избираме елементи от тип file:
$(':file');
Както при другите селектори за псевдо-класове
(започващи с ':'), пред ':' е по-добре
да се постави име на таг или друг селектор, в
противен случай ще се приложи селектор '*',
тоест $(':file') ще се възприеме като
$('*:file'), затова вместо това е по-добре да се
използва $('input:file').
Пример
Нека изберем всички input полета от тип file и
им направим зелен фон и червена рамка с помощта на метода
css:
<form>
<input type="button" value="button">
<input type="file">
<input type="password">
<button>button</button>
<input type="reset">
<input type="radio" name="test">
<input type="radio" name="test">
<input type="checkbox">
<input type="text">
</form>
<+javascript+>
$('form input:file').css({background: 'green', border: '2px red solid'});
$('form').submit(function(event) {
event.preventDefault(); // предотвратява изпращането на формата
});
<-javascript->