2017-02-24 19 views
0

在我的應用程序中,我有三頁第一頁顯示類型listview標記(商場,超市等),第二頁顯示標記listview屬於同一類型,第三頁顯示詳細信息的每個標記。顯示標記Listview屬於同一類型ID

我已經成功顯示了類型頁面,但listview的標記沒有顯示相同的type_ID!

page 1 type listview

page 2 markers listview

(在DB標誌表)

**L_ID , name , image, Type_ID** 
|1 , B_mall  , .jpg , 1| 
|2 , c_mall  , .jpg , 1| 
|3 , D_supermarket , .jpg , 2| 

php文件查詢

<?php 
    $dbhost = '127.0.0.1'; 
    $dbuser = 'root'; 
    $dbpass = ''; 
    $dbname = 'maalem'; 
    $sql = "SELECT * FROM landmarks where Type_ID=:id"; 

    try { 
     $con = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass); 
     $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
     $con->query('SET NAMES utf8'); 
     $stmt = $con->prepare($sql); 
     $stmt->bindParam("id", $_GET["Type_ID"]); 
     $stmt->execute(); 
     $markers = $stmt->fetchAll(PDO::FETCH_OBJ); 
     $con = null; 
     echo '{"items":'. json_encode($markers) .'}'; 
     } catch(PDOException $e) { 
     echo '{"error":{"text":'. $e->getMessage() .'}}'; 
    } 

?> 

類型的JS文件

var serviceURL = "http://localhost/map/";   //192.168.1.157         


var type; 

$('#typeListPage').bind('pageinit', function(event) { 
    gettypeList(); 
}); 

function gettypeList() { 
    $.getJSON(serviceURL + 'gettype.php', function(data) { 
     $('#typeList li').remove(); 
     type = data.type; 
     $.each(type, function(index, type) { 
      $('#typeList').append('<li><a href="marker.html?Type_ID=' + type.Type_ID + '">' + 
        '<img src="' + type.Icon + '"/>' + 
        '<h4>' + type.type_title + '</h4></a></li>'); 
     }); 
     $('#typeList').listview('refresh'); 
    }); 
} 

標記JS文件

var serviceURL = "http://localhost/map/";           
var markers;  
$('#markerListPage').bind('pageinit', function(event) { 
    getmarkerList(); 
}); 

function getmarkerList() { 
    $.getJSON(serviceURL + 'getmarkers.php', function(data) { 
     $('#markerList li').remove(); 
     markers = data.items; 
     $.each(markers, function(index, landmarks) { 
      $('#markerList').append('<li><a href="markerdetail.html?L_ID=' + landmarks.L_ID + '">' + 
        '<img src="pics/' + landmarks.Image + '"/>' + 
        '<h4>' + landmarks.Title + '</h4></a></li>'); 
     }); 
     $('#markerList').listview('refresh'); 
    }); 
} 

marker.Html文件

<!DOCTYPE HTML> 
<html> 
    <header> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
     <meta charset="utf-8"> 
    </header> 
    <body> 
     <div id="markerListPage" data-role="page" > 
     <div data-role="header" > 
      <h1>markers</h1> 
      <a href="index.html" data-rel="back" class="ui-btn-left ui-btn ui-btn-icon-notext ui-corner-all ui-icon-back"></a> 
     </div> 
     <div data-role="content"> 
      <ul id="markerList" data-role="listview" data-filter="true"></ul> 
     </div> 
     </div> 
    </body> 
</html> 
+0

不知道該找什麼。控制檯或網絡選項卡中的任何錯誤? – mplungjan

+0

什麼都沒有顯示在控制檯中,我已經發布了頁面的圖像,並且我想要顯示頁面中具有相同類型的標記2 – RAB

+0

您需要添加Ajax錯誤處理以查看 – mplungjan

回答

1
var serviceURL = "http://localhost/map/";           
var markers;  
$('#markerListPage').live('pageshow', function(event) { 
var id = getUrlVars()["Type_ID"]; 
$.getJSON(serviceURL + 'getmarkers.php?Type_ID=' + id, getmarkerList); 

}); 

function getmarkerList(data) { 
     $('#markerList li').remove(); 
     markers = data.items; 
     $.each(markers, function(index, landmarks) { 

      $('#markerList').append('<li><a href="markerdetail.html?L_ID=' + landmarks.L_ID + '">' + 
        '<img src="pics/' + landmarks.Image + '"/>' + 
        '<h4>' + landmarks.Title + '</h4></a></li>'); 
     }); 
     $('#markerList').listview('refresh'); 

} 
+0

如果這可以解決您的問題,請嘗試添加簡要說明,並將其標記爲未來讀者的正確答案。 –