2013-09-25 26 views
6

Mam formularz subskrypcji z kilkoma zakładkami. Możesz kliknąć w tym formularzu w tył i w przód.menu rozwijane jQuery selected = wybrane w Safari nie działa

Dla drop-downów używam jquery do wstępnego wyboru poprzedniego wyboru, więc ludzie nie muszą ponownie odpowiadać na to pytanie po kliknięciu wstecz.

Ten skrypt działa dobrze w przeglądarkach Chrome i Firefox, jednak w przypadku Safari nie działa wcale. Jakoś nie mogę tego uruchomić.

Czy możesz spojrzeć na to i powiedzieć mi, co robię źle?

skrypt:

if (repeat_visit !== '') { 
    $('#repeatVisit').find('option').each(function(){ 
     if ($(this).val() === repeat_visit) { 
      $(this).attr('selected','selected'); 
     } 
    }); 
} 

atrybut jest ustawiony na opcję tak to wygląda: Tak

widzę to się zdarza, ale wydaje się, że Safari nie zmienia strony, gdy wybrany atrybut zostanie dodany po wczytaniu strony. Tak jakoś muszę wywołać to zdarzenie zmiany.

+0

możesz stworzyć skrzypce dla tego samego? –

+0

próbowałeś po prostu używając $ ('# repeatVisit'). Val (repeat_visit); – user1573618

+0

Nie JSfiddle I mogę spróbować ustawić wartość w ten sposób, dzięki! – BonifatiusK

Odpowiedz

24

Znalazłem odpowiedź!

Możesz użyć .prop ("selected", true) zamiast attr ("selected", "selected");

+1

Dzięki! to wydaje się naprawić problem. – thephpx