0
在jquery mobile中,我爲產品創建了一個單獨的頁面。它使用phonegap從查詢Local Sq-lite數據庫動態加載。下面的代碼工作正常,並顯示帶有複選框的產品列表。但是,如果我單擊一個複選框,則會選中所有複選框。還有一些本地複選框顯示在屏幕上。如何正確顯示此複選框列表並獲取提交時檢查複選框的值?單擊複選框點擊選擇Jquery mobile中的所有複選框
$('#productspage').live('pageinit',function(event){
loadProducts();
});
// Load Products for Products page
function loadProducts()
{
var db=window.openDatabase("salesorder", "1.0", "SalesOrder", 1048576);
if(db!=null)
{
db.transaction(queryProductsTable, errorPT);
}
else
{
alert("table not exists");
}
}
function queryProductsTable(tx)
{
tx.executeSql('SELECT * FROM products', [], queryProductsSuccess, errorPT);
}
function errorPT(err) {
alert("Error processing SQL: "+err.code);
}
//Query products and append to products_list
function queryProductsSuccess(tx, results) {
var len = results.rows.length;
$("#products_list").empty();
for (var i=0; i<len; i++){
var product_id=results.rows.item(i).productid; // Returns null
var product_name=results.rows.item(i).productname;
var product_price=results.rows.item(i).unit_price;
var product_stock=results.rows.item(i).qtyinstock;
$("#products_list").append("<input type='checkbox' name='products_check' id='"+product_id+"' value='"+product_name+"' price='"+product_price+"' stock='"+product_stock+"' class='custom'><label for='"+product_id+"'>"+product_name+"</label>");
}
$("#products_list").trigger("create");
}
我修改了每個複選框的唯一標識符,但沒有工作。我在屏幕上看到了一個不需要的本機複選框顯示。所有複選框的工作取決於此本機複選框。 – Ramprasad 2012-08-09 05:59:45
我解決了這個問題...在queryProductsSuccess(tx,results)函數產品id返回「null」。所以這個複選框不能正確呈現也無法選擇。在產品ID問題進行更改後,它工作正常。 – Ramprasad 2012-08-09 07:34:29