Wiem, że to proste pytanie, ale potrzebuję porady od doświadczonych ludzi.Lepszy sposób sprawdzenia, czy niektóre pliki typów wejść są puste w jquery?
mam 3 wejścia plik typu jak:
<input type="file" name="1-files" />
<input type="file" name="2-files" />
<input type="file" name="3-files" />
wybiorę wszystkie wejścia (na mojej stronie mam też inne wejścia typ pliku), którego nazwa kończy się na „-files” (pisałem w konsoli Google Chrome):
$("input[type='file'][name*='-files']").length
Ok. Wybieram plik przy użyciu wejścia 1-files
. Po tym, uruchom następujący kod w konsoli Google Chrome:
$("input[type='file'][name*='-files']:empty").length
Spodziewam się 2
ale wydaje 3
.
Czy możesz mi powiedzieć, dlaczego?
Chcę uzyskać wszystkie elementy pliku typu wejściowego, które wartości są puste. Użyłem w skrócie selektora :empty
, ale wygląda na to, że nie działa poprawnie.
Oczywiście, mogłem użyć
var empty_count = 0;
$.each($("input[type='file'][name*='-files']"), function(k, v){
if($(this).val() === '')
empty_count++;
});
Ale chcę najkrótszy sposób to zrobić bez $.each
.
Dziękuję
elementy wejściowe nie mogą zawierać treści, więc oni zawsze puste. [: Empty doco] (http://api.jquery.com/empty-selector/) tak jednoznacznie mówi ... – nnnnnn
Powinieneś zarządzać pustką za pomocą atrybutu ".val" – Jaay