【问题标题】:JQuery Mobile checkbox not displaying correctlyJQuery Mobile 复选框未正确显示
【发布时间】:2016-04-13 03:28:52
【问题描述】:

在从 HTML5 DB 表中分配值之后。所有值都正确显示,但复选框,我正在分配值“true”或“false”。

function loadDTValues(v1) {
    db.transaction(function (tx) {
        tx.executeSql('SELECT * FROM CourseDataTable', [], function (tx, results) {
            $('#coursemenu').val(results.rows.item(v1).t_coursemenu).change();
            $('#checkbox1_2').val(results.rows.item(v1).t_checkbox1_2).selectmenu('refresh');
            $('#functionmenu').val(results.rows.item(v1).t_functionmenu).change();
            $('#startdate').val(results.rows.item(v1).t_startdate);
            $('#enddate').val(results.rows.item(v1).t_enddate);
            $('#courselocation').val(results.rows.item(v1).t_courselocation).change();
            $('#courseteacher').val(results.rows.item(v1).t_courseteacher).change();
            $('#comment').val(results.rows.item(v1).t_comment);
            $('#dt_id').val(results.rows.item(v1).t_id);
        });
    });
};

【问题讨论】:

    标签: jquery jquery-mobile checkbox


    【解决方案1】:

    对于复选框,您应该将选中的属性设置为不是 val,然后刷新 checkboxradio 小部件(不是选择菜单):

    $("#checkbox1_2").prop( "checked", true ).checkboxradio( "refresh" );
    

    【讨论】:

    • 所以我把你的代码改成了 $("#checkbox1_2").prop( "checked", results.rows.item(v1).t_checkbox1_2 ).checkboxradio( "refresh", true );因此该值将根据表格从 true o false 更改。它仍然不起作用。即使值为 false,它现在也显示为 true。
    • 这是我的 hack... 添加 if else 语句来测试值,然后使用您的命令。非常感谢您的帮助!
    • var v2 = results.rows.item(v1).t_checkbox1_2; if (v2 == "true") { $("#checkbox1_2").prop("checked", true).checkboxradio("refresh", true); }else{ $("#checkbox1_2").prop("checked", false).checkboxradio("refresh", true); };
    猜你喜欢
    • 2013-05-23
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-04
    • 1970-01-01
    • 2014-01-09
    • 2011-08-17
    相关资源
    最近更新 更多