我的页面中有一个选择菜单,用于加载来自DB的值。我可以在选择菜单中查看值。但在显示所选值时,我无法正确显示。即如果该值包含任何空格,则它没有获得全部价值(例如:如果我选择"威尔逊花园",我只得到"威尔逊"。它正在显示"威尔逊Garden"在选择框中,当我尝试通过更改事件获得该值时,我只得到了" 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');
});
});
});
答案 0 :(得分:0)
因为你没有引用该属性。您需要将这些值包装在双引号旁边。
var opt = '<option value="';
opt += res.rows.item(i).Category;
opt += '">';
opt += res.rows.item(i).Category;
opt += '</option>';
$("#select-choice").append(opt);