0
jquery mobile에서 제품에 대한 별도의 페이지를 만들었습니다. 전화 갭을 가진 쿼리 Local Sq-Lite 데이터베이스에서 동적으로로드됩니다. 아래의 코딩은 잘 작동하고 체크 박스가있는 제품 목록을 보여줍니다. 그러나 하나의 확인란을 클릭하면 모든 확인란이 선택됩니다. 또한 일부 기본 확인란이 화면에 표시됩니다. 이 체크 박스 목록을 올바르게 표시하고 제출시 체크 박스 값을 가져 오는 방법은 무엇입니까?단일 체크 상자 클릭은 Jquery 모바일에서 모든 확인란을 선택합니다.
$('#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");
}
각 확인란마다 고유 ID가 수정되었지만 작동하지 않습니다. 원하지 않는 네이티브 확인란이 화면에 표시되었습니다. 모든 확인란의 작동 방식은이 네이티브 확인란에 따라 다릅니다. – Ramprasad
이 문제를 해결했습니다 ... queryProductsSuccess (tx, results) 함수 제품 ID 반환 "null"있음. 따라서이 확인란은 제대로 렌더링되지 않으며 선택할 수도 없습니다. 제품 ID 문제를 변경 한 후에도 문제가 없습니다. – Ramprasad