Javascript 从数据库动态显示选择菜单值?

Javascript 从数据库动态显示选择菜单值?,javascript,jquery,sqlite,jquery-mobile,Javascript,Jquery,Sqlite,Jquery Mobile,我是jquery新手,如何从salite db动态插入select菜单值?我可以选择值如何插入选择菜单?我需要插入以选择主题选择框。可以通过onChange完成吗?有人能帮我吗 Java脚本: <script type="text/javascript" charset="utf-8"> document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() {

我是jquery新手,如何从salite db动态插入select菜单值?我可以选择值如何插入选择菜单?我需要插入以选择主题选择框。可以通过onChange完成吗?有人能帮我吗

Java脚本:

<script type="text/javascript" charset="utf-8">  
  document.addEventListener("deviceready", onDeviceReady, false);  
  function onDeviceReady() {             
    var db = window.sqlitePlugin.openDatabase({name: "MYDB"}); 
    db.transaction(function(tx) {
      tx.executeSql("select * from LOGS;", [], function(tx, res) {
        console.log("Row = " + i + ", subject= " + res.rows.item(i).subject ");
      });
    });  
  }  
</script>
HTML:


用户界面

在使用之前,您需要声明onDeviceReady:

function onDeviceReady() {             

    var db = window.sqlitePlugin.openDatabase({name: "MYDB"}); 

    db.transaction(function(tx) {

        tx.executeSql("select * from LOGS;", [], function(tx, res) {

            console.log("Row = " + i + ", subject= " + res.rows.item(i).subject ");
        });
    });  
} 

document.addEventListener("deviceready", onDeviceReady, false);

除此之外,我不明白为什么它不起作用。记住,DeVeCeRead是一个PrimeGAP的东西——如果你想在不同的上下文中使用它,你可以考虑使用文档OnLoad。

这样尝试。我不确定你脑子里想的是什么

db.transaction(function (tx) {
    tx.executeSql("select * from LOGS;", [], function (tx, res) {
        $("#select-choice-1").append($("<option/> ", {
            value: res.rows.item(i).subject,
            html: res.rows.item(i).subject
        }));
    });

我已经附加了循环并刷新了列表视图。它适合我

您能从服务器检索数据吗?是的,我能检索。我通过以下语句在控制台中打印它:console.logRow=+I+,subject=+res.rows.itemi.subject;发布检索到的数据样本。我会检查,我需要相同的
db.transaction(function (tx) {
    tx.executeSql("select * from LOGS;", [], function (tx, res) {
        $("#select-choice-1").append($("<option/> ", {
            value: res.rows.item(i).subject,
            html: res.rows.item(i).subject
        }));
    });
var db = window.sqlitePlugin.openDatabase({name: "MYDB"});
                                             db.transaction(function (tx) {
                                              tx.executeSql("select * from Locationlog;", [], function (tx, res) {
                                             for (var i = 0; i < res.rows.length; i++) {
                                               $("#select-choice-1").append('<option value='+res.rows.item(i).Category+'>'+res.rows.item(i).Category+'</option>');
                                                            }
                                               $("#select-choice-1").listview('refresh');
                                                          });
                                                   });