2016-06-28 9 views
0

In Bezug auf JQuery und JQueryMobile,JQuery Mobile-selectmenu() mehrere Option true/false -> Auffrischen nicht die Anzeige von Entscheidungen

-Code ist in diesem JSFiddle Link: https://jsfiddle.net/nyluje/jg5cgw76/7/

Ich benutze ein flipswitch zu ändern, wenn Ein select Objekt hat das Attribut multiple oder nicht.

Zuerst ist die flipswitchoff und das Attribut multiple gilt nicht für die select.

Wenn ich die select verwende, kann ich nur eine einzige Option wählen (das funktioniert gut).

Dann drehe ich die flipswitch zu on. Jetzt mit dem Code, den ich in der Funktion setSelectAccordingToFs() implementiert habe, wird das Attribut multiple zu dem select hinzugefügt, und es ist dann möglich, mehrere Optionen abzurufen. Aber man merkt, dass die pop-up, die keine native Menü ist, wird die mehrere nicht angezeigt wählen richtig, wie auf diesem Bild:

multiple select as it should be

Es hält auf die einzelnen Auswahltafel anzuzeigen. Welche erlaubt Optionen zu addieren, aber bietet nicht die Möglichkeit einige ausziehen:

multiple select on a single select panel

Daher frage ich mich: Wie das Auswahlfeldmenü von einer ausgewählten verwendet aktualisieren, je nach der attribute Mehrfachwert: 'aus' oder 'on', auf diesem select Tag?

Irgendeine Idee?

Antwort

0

Ok ich fand die Lösung. Ich setzte es in dieser Version meiner JSFiddle: https://jsfiddle.net/nyluje/jg5cgw76/8/

Der Trick: Mit der Option 'Refresh' war nicht genug. Um (wirklich) die selectmenuzu aktualisieren und das Panel in diese Aktualisierung einzuschließen, müssen die Funktionen 'destroy' und 'enable' verwendet werden. Also habe ich am Ende meiner Funktion setSelectAccordingToFs() etwas hinzugefügt:

targetSelect.selectmenu('destroy');  
    targetSelect.selectmenu(); 
    targetSelect.selectmenu('enable');  
    targetSelect.selectmenu('refresh',true);