J’ai un commutateur standard de sélection. Et je veux changer le texte de l’option spécifique après que la page soit chargée (prête). La valeur est modifiée mais elle n’est pas mise à jour dans la vue de l’interface utilisateur du navigateur. ‘actualiser’ et changer () n’aident pas.
$("#set_slider option[value='0']").text('before') ; $("#set_slider").change(); function clickz() { $("#set_slider option[value='0']").text('after') ; $("#set_slider").change(); $("#set_slider").slider('refresh'); $("#txt").html($("#set_slider option[value='0']").text()); } SET OFF
celui-ci n’a pas fonctionné aussi bien:
Header
SET OFF Footer
$(document).delegate('#page2', 'pageshow', function (event, ui) { $("#set_slider").change(); $("#set_slider").slider('refresh'); }); $("#set_slider option[value='0']").text('before'); function clickz() { $("#set_slider option[value='0']").text('after'); $("#txt").html($("#set_slider option[value='0']").text()); $.mobile.changePage('#page2'); }
Est-ce que quelque chose comme ça marche?
JS
$('#set_slider').bind('change', function() { var activeLabel = $('span.ui-slider-label'); var mySlider = $(this); var text = mySlider.find('option:selected').text(); var new_set = 'Before'; var new_off = 'After'; // changing the text does nothing //mySlider.find('option[value="0"]').text(new_set); //mySlider.find('option[value="1"]').text(new_off); // You need to update the ui-slider-label spans if(mySlider.val() == 0) { activeLabel.text(new_set); } else { activeLabel.text(new_off); } mySlider.slider( 'refresh' ); // .sortinggger( 'create' ) });
HTML