Как реализовать функцию «связанные вопросы» с помощью jquery - PullRequest
1 голос
/ 31 августа 2010

Благодаря функции «Задать вопрос» в Stack Overflow, когда я закончу вводить заголовок задаваемого вопроса, область под заголовком откроется и отобразит список «связанных вопросов».

Как мне реализовать это с помощью jquery / JavaScript?Есть ли какой-нибудь плагин или открытый исходный код, который я мог бы использовать для этого?

Я создаю сайт, используя Django и Solr (для полнотекстового поиска).Так что в идеале решение будет хорошо работать с этими двумя технологиями.

1 Ответ

1 голос
/ 31 августа 2010

Вопрос о том, как вы соответствуете вопросам , уже заданным .

Ответ о том, как вы должны реализовать его в AJAX, следующий:

Во-первых,реализовать веб-сервис, к которому можно обращаться с помощью JavaScript, который принимает заголовок вопроса и возвращает список вопросов, которые кажутся связанными.Допустим, служба находится на http://example.com/queryRelatedQuestions, и возвращает объект JSON в следующей форме:

{
    "How to find the average speed of an African sparrow": "http://example.com/questions/1",
    "Speed of European sparrows diminishing, help ASAP": "http://example.com/questions/2"
}

Во-вторых, когда пользователь ввел заголовок вопроса (blur событие ввода текста)запросите услугу следующим образом:

$.post('http://example.com/queryRelatedQuestions', {
        query: $('#title-text').val()
    },
    function(data){
        var result = ['<ul>'];
        $.each(data, function(title, url) {
            result.push('<li><a href="');
            result.push(url);
            result.push('">');
            result.push(title);
            result.push('</a></li>');
        });
        result.push('</ul>')
        $('#relatedQuestions').html(result.join(''));
    }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...