jQuery, обновление БД / проблема с отображением - PullRequest
0 голосов
/ 16 сентября 2010

Я реализовал функцию thumpsup в php.представление содержит кнопку thumpsup, и каждый раз, когда пользователь нажимает на нее, обновляется БД.Я работаю с Zend Framework, поэтому у меня есть url mypage.de/articles/thumpsup/id/x, этот URL-адрес указывает на определенный acion / функцию в моем контроллере статей, но эта функция не возвращает никакихданные, это просто добавляет всплеск в базу данных.есть еще один список функций, который передает содержимое в представление.

, поэтому я ищу функцию jquery, которая выполняет запрос url mypage.de/articles/thumpsup/id/x по кликуи затем выполняет функцию списка для обновления представления.

$(document).ready(function() {
    $("a.tp").click(thumpsUp);
});

function thumpsUp() {
var url = window.location.hostname + '/articles/thumpsup/id/'
        + $(this).attr('id');
$.post(url, {
    "format" : "json"
}, function(data) {
    ....
}, 'html');
return false;
}

, поэтому функция thumpsup, которую я обычно использовал бы для выполнения URL-адреса и обновления представления, здесь не работает.есть идеи как это решить?

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

если вы используете $(this), вам нужно передать его в функцию И вы не можете просто запустить функцию, вам нужна анонимная функция ... так что попробуйте это:

$(document).ready(function() {
    $("a.tp").click(function(){ var myelement = $(this); thumpsUp(myelement); });
});

function thumpsUp(element) {
var url = window.location.hostname + '/articles/thumpsup/id/'
        + element.attr('id');
$.post(url, {
    "format" : "json"
}, function(data) {
    ....
}, 'html');
return false;
}
0 голосов
/ 17 сентября 2010

Если я правильно вас понимаю, функция "list" также является JavaScript.Если это так, просто вызовите его из функции обратного вызова вашего AJAX-запроса.

function(data) { $.post(url, { "format" : "json" }, function(data) { list(); }, 'html');</p> <p>}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...