【问题标题】:Issue with getting selected value of select menu in query?在查询中获取选择菜单的选定值的问题?
【发布时间】:2014-04-09 05:24:33
【问题描述】:

我的页面中有一个选择菜单,可以从数据库加载值。我可以在选择菜单中查看值。但是在显示所选值时,我无法正确显示它。即,如果该值包含任何空格,则它没有获得完整的价值(例如:如果我选择“威尔逊花园”,我只会得到“威尔逊”。当我尝试获取该值时,它在选择框中显示“威尔逊花园”通过更改事件,我只得到了“Wilson”,对于其中有空格的所有值都会发生同样的事情。

我的 html 代码是:

<select name="select-choice-1" id="select-choice-1">
 <option value="Select Category">Select Category</select>
</select>

而我的Jquery代码如下,

     $("#select-choice").on('change', function(event) {
              alert( this.value );
              console.log("Category is: " +this.value); // Here I am getting the value.. 
               });

// 将值动态存储到选择菜单中..

$(document).on("pagebeforeshow","#homePage",function(){

     var db = window.sqlitePlugin.openDatabase({name: "MYDB"});
     db.transaction(function (tx) {
       tx.executeSql("select distinct Category from Locationlog;", [], function (tx, res) {
            for (var i = 0; i < res.rows.length; i++) {
                 $("#select-choice").append('<option value='+res.rows.item(i).Category+'>'+res.rows.item(i).Category+'</option>');
              }
            $("#select-choice").listview('refresh');
          });
         });
      });

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-mobile


    【解决方案1】:

    这是因为您没有引用该属性。您需要将这些值用双引号括起来。

    var opt  = '<option value="';
        opt += res.rows.item(i).Category;
        opt += '">';
        opt += res.rows.item(i).Category;
        opt += '</option>';
    
    $("#select-choice").append(opt);
    

    【讨论】:

    • 是的,显示值可以正常工作。列表刷新没有发生。我使用的方式是正确的方式吗?如果不是,我如何通过更改事件刷新列表?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-23
    • 1970-01-01
    • 2015-01-27
    • 1970-01-01
    相关资源
    最近更新 更多