Próbuję włączyć wszystkie elementy formularza na podwójnym kliknięciem formie i uprościły kod w następujący sposób:Podwójne kliknięcie wyłączona wybierz opcję, aby umożliwić
<form>
<input type="text" name="foo" disabled />
<select name="bar" disabled>
<option>a</option>
<option>b</option>
</select>
</form>
<script type="text/javascript">
$(function() {
$('form').dblclick(function() {
$(this).find('input,select').removeAttr('disabled');
});
});
</script>
Jednak zdarzenie forma podwójne kliknięcie nie ognia podczas unoszenia nad wyłączonym elementem <select>
. I niestety, "readonly" attribute nie działa na elementach <select>
.
Jest to aplikacja wewnętrzna i potrzebuję jej tylko w Google Chrome.
UPDATE:
Dostaję kilka odpowiedzi na to i myślę, że muszę zmienić moje pytanie, które pomogą prowadzić proces ... Co W3C specyfikację elementów formularza na niepełnosprawnych mówić? ... Wygląda na to, że zdarzenie z podwójnym kliknięciem nie uruchamia się na przykład na wyłączonych elementach <input>
w Firefoksie. Być może to, że uruchamia się w Chrome, to błąd/niewspółosiowość w specyfikacji, na którą nie mogę liczyć.
W tej chwili oglądanie zdarzenia podwójnego kliknięcia na całkowicie umieszczonym elemencie opakowania powyżej formularza wydaje się najlepszą opcją ... mimo że nie cierpię dodawania dodatkowych elementów opakowania.
Interesujące. Odpowiedź na to pytanie jest najlepsza ... jednak jaka jest specyfikacja W3C dla zdarzeń wyłączonych z elementów formularza? Być może zdarzenie z dwukrotnym kliknięciem w Chrome w elementach ' 'jest błędem? –
@DavidBudiac to prawda, może to błąd, w tym przypadku użyj ": input", a nie "select" jako selektora, aby dodać klasę. –