Передать параметр jQuery в PHP
14 сообщений
#12 лет назад
Необходимо передать параметры табов:active, expired, disabled, archive
в php через jquery.
6 часов гугления и сравнения примеров не помогли в моем вопросе
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$( "#tabs" ).tabs();
$('#tabs-2')({
url: 'index.php',
type: "POST",
data: 'page=account&listing=active',
});
$('#tabs-3')({
url: 'index.php',
type: "POST",
data: 'page=account&listing=expired',
});
$('#tabs-3')({
url: 'index.php',
type: "POST",
data: 'page=account&listing=disabled',
});
$('#tabs-3')({
url: 'index.php',
type: "POST",
data: 'page=account&listing=archive',
});
});
</script>
<div id="tabs">
<ul>
<li><a href="#tabs-1">Активные</a></li>
<li><a href="#tabs-2">Рекламные</a></li>
<li><a href="#tabs-3">Неактивные</a></li>
<li><a href="#tabs-4">Архив</a></li>
</ul>
<div id="tabs-1">
</div>
</div>
5330 сообщений
#12 лет назад
Печальные скилы.$('#tabs-3')({
url: 'index.php',
type: "POST",
data: 'page=account&listing=expired',
});
Это что по Вашему должно делать?
Передавать параметры по какому событию нужно? После передачи что делать с ответом?
Главный вопрос: что Вы хотите получить вообще? смену контента при переключения по табам?
14 сообщений
#12 лет назад
Цитата ("ArtPro"):смену контента при переключения по табам?
При кликании данного таба подгружать данные с параметром page=account&listing=expired
Цитата ("ArtPro"):
Это что по Вашему должно делать?
Да.
Приношу извинения за неточность вопроса.
616 сообщений
#12 лет назад
Мда...как-то так примерно:
$("a").click(function(){
$.ajax({
url: "index.php",
type: "GET",
data: "page=account&listing=active",
cache: false,
success: function(response){
if(response == 0){
alert("ошибка");
}else{
$("#tabs-2").append(response);
}
}
});
});
14 сообщений
#12 лет назад
Art-apple,спасибо!
Сделал по Вашему совету.
<script>
$(function() {
$( "#tabs" ).tabs();
$("a").click(function(){
$.ajax({
url: "index.php",
type: "GET",
data: "page=account&listing=active",
cache: false,
success: function(response){
if(response == 0){
alert("ошибка");
}else{
$("#tabs-2").append(response);
}
}
});
});
});
Переключение по табам есть, но контент согласно параметру не появляется.
649 сообщений
#12 лет назад
Осталось только угадать, что делает ваш index.php с этими параметрами и этим методом передачи данных.Или можно обратиться к экстрасенсам.
14 сообщений
#12 лет назад
Цитата ("webjournal"):page=account&listing=active
Запрос в браузере страницы index.php?page=account&listing=active выводит активные записи, соотв. Цитата ("penguin"):
с этими параметрами и этим методом передачи данных
должен вывести тоже самое при кликании на таб.
5330 сообщений
#12 лет назад
Цитата ("webjournal"):Art-apple,
спасибо!
Сделал по Вашему совету.
Вы в коде 4 блока вставите на каждую ссылку???!!!!
Всем табам лучше задать класс, на него повесить обработчик на клик, в обработчике смотреть id/data/ссылку и вызывать уже запрос
Блок делаем таким
<ul class="supertab">
<li><a href="#active">Активные</a></li>
<li><a href="#reclama">Рекламные</a></li>
<li><a href="#nonactive">Неактивные</a></li>
<li><a href="#arhive">Архив</a></li>
</ul>
Теперь у нас есть класс supertab для ul, и ссылки внутри li этого списка.
$("ul.supertab li a").click(function(){
$.ajax({
url: "index.php",
type: "GET",
data: "page=account&listing="+$(this).attr('href'),
cache: false,
success: function(response){
if(response == 0){
alert("ошибка");
}else{
$("#tabs-1").append(response);
}
}
});
});
Пишу без проверки в песочнице, на глаз, так что может что пропустил.
Но в любом случае 1 блок кода лучше чем 4.
Учитесь делать "как надо", а не "как умею" - это залог роста профессионального.
14 сообщений
#12 лет назад
ArtPro,cделал так:
<script>
$(function() {
$( "#tabs" ).tabs();
});
$("ul.supertab li a").click(function(){
$.ajax({
url: "index.php",
type: "GET",
data: "page=account&listing="+$(this).attr('href'),
cache: false,
success: function(response){
if(response == 0){
alert("ошибка");
}else{
$("#tabs-1").append(response);
}
}
});
});
</script>
<div id="tabs">
<ul class="supertab">
<li><a href="#active">Активные</a></li>
<li><a href="#reclama">Рекламные</a></li>
<li><a href="#disabled">Неактивные</a></li>
<li><a href="#arhive">Архив</a></li>
</ul>
<div id="tabs-1">
</div>
</div>
Файер буг пишет:
Цитата:
Error: jQuery UI Tabs: Mismatching fragment identifier.
throw new Error( msg );