我在jQuery Mobile中有一个切换开关组件(jsfiddle here

<select name="toggle" id="toggle" data-role="slider">
    <option id="value1" value="off">value1</option>
    <option id="value2" value="on">value2</option>
</select>

我希望能够在任何给定时刻以编程方式更改显示的文本。
例如,“value1”应该变成“newvalue1”,“value2”应该变成“newvalue2”。
此函数应使用新值重新创建切换开关,但实际上它不执行任何操作:
function yourfunction() {
    //alert ("Changing stuff");
    $('#value1').html ('newvalue1');
    $('#value2').html ('newvalue2');
    var myswitch = $("#toggle");
    myswitch.slider("refresh", true);
}
window.setInterval(yourfunction, 3000);​

最佳答案

这对你有用吗?
http://jsfiddle.net/aD5xD/13/
JS公司

function yourfunction() {
        //alert ("Changing stuff");
        $('.ui-slider-label-a').text('newvalue1');
        $('.ui-slider-label-b').text('newvalue2');
        var myswitch = $("#toggle");
        myswitch.slider("refresh", true);

    }
window.setInterval(yourfunction, 3000);​

jQM为两个选项(ui-slider-label-aui-slider-label-b)添加了一个类,通过使用这些类,您可以访问正确的元素并更改文本。
注意:查看jQM添加的额外标记的最好方法是使用Google Chrome(IMHO)并检查元素

08-07 09:59