Выделите слово и отправьте запрос GET - PullRequest
0 голосов
/ 24 февраля 2020

Я создал текстовое поле в модели Django. Я хочу выделить слова, когда слово нажимается. Я нашел этот jsFiddle

Как я могу настроить его для отправки запроса GET на Django, когда выбрано слово для получения JSON от другого API веб-сайта? Заранее спасибо!

$(function() {
  editTxt('#myTxt');
  editTxt('#myTxtDiv');

  $('span').live('mouseover', function() {
    $(this).addClass('hlight');
  });

  $('span').live('mouseout', function() {
    $(this).removeClass('hlight');
  });
});

function editTxt(selector) {
  $(function() {
    var newHtml = '';
    var words = $(selector).html().split(' ');

    for (i = 0; i < words.length; i++) {
      newHtml += '<span>' + words[i] + '</span> ';
    }
    $(selector).html(newHtml);
  });
}

1 Ответ

0 голосов
/ 24 февраля 2020

Вы можете сделать что-то подобное, используя $. ajax:

...
$("span").on("mouseover", function() {
  xhr = $(this).addClass("hlight");
  $.ajax({
    method: "post",
    url: "YOUR_DJANGO_API_URL",
    data: { text: $(this).text() },
    success: function(data) {
      // replace HTML element or whatever.
      console.log(data);
    }
  });
});
$("span").on("mouseout", function() {
  xhr.abort();
  $(this).removeClass("hlight");
});
...

Примечание вам необходимо заменить атрибут объекта данных text на какие бы параметры вашего бэкэнда API ни принимались, и, как указано в комментариях, вам не нужно .live()

Обязательно замените YOUR_DJANGO_API_URL на URL вашего бэкэнд-API

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