У меня есть мобильное приложение, первая страница показывает список категорий, при нажатии на одну категорию перейдите на вторую страницу, передав идентификатор категории на URL-адрес и показывая список имен компаний в разделе эта категория.
Данные на MySQL, поэтому я использую jSON
Все работает нормально, но вместо отображения списка бизнес-имен он показывает только первый бизнес, который повторяется 14 раз (каждый бизнес имеет 14 полей), поэтому вместо петля на 5 бизнес под одной категорией, выглядит как петля внутри полей первого бизнеса категории и повторения названия компании.
JQuery мобильный каждый цикл над JSON не работает
Вот JQuery:
$('#businessListPage').live('pageshow', function(event) {
var id = getUrlVars()["id"];
$.getJSON(serviceURL + 'getbusiness.php?id='+id, displayBusiness);
});
function displayBusiness(data) {
var business = data.item;
console.log(business);
$.each(business, function(index) {
$('#actionList').append('<li><a href="">' +
business.business + '</a></li>');
})
$('#actionList').listview('refresh');
}
function getUrlVars() {
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
Это HTML-
<div id="businessListPage" data-role="page" data-add-back-btn="true">
<div data-role="header">
<h1>Business List</h1>
</div>
<div data-role="content">
<ul id="actionList" data-role="listview" data-inset="true"></ul>
Я пробовал много вещей, но я не очень хорошо jquery, я буду признателен за любую помощь. Благодаря
* * Добавить это:
Это PHP, если это помогает ... У меня есть нормализованная таблица, Линк категории с бизнесом, я тестировал Выбрать часть и работаю хорошо.
<?php
include 'config.php';
$sql = "select * " .
"from directory2 WHERE ID IN(SELECT dirID FROM cat2dir WHERE catID =:id)group by business order by business ";
try {
$dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare($sql);
$stmt->bindParam("id", $_GET[id]);
$stmt->execute();
$businesses = $stmt->fetchObject();
$dbh = null;
echo '{"item":'. json_encode($businesses) .'}';
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
?>
Как выглядит ваш сервер на вашем компьютере? – bluetoft
Нравится это http://canadianholisticdirectory.ca/mobile/show.jpg – user2585262