Попытка передать данные из тега <a>с помощью функции onclick через метод post () - PullRequest
0 голосов
/ 23 сентября 2019

Я хочу доставить некоторые данные на страницу php, когда нажимаю на тег <a>.HTML генерируется с помощью jquery, поэтому исходный файл - .js.

Я пытаюсь использовать метод post (), но он не работает.Функция (данные, статус) не отвечает.

Я применяю некоторые дополнительные данные в <a>:

<a href="http://path" data-value = "89"></a>

, а затем пытаюсь использовать post () вфункция щелчка, как:

jQuery(function ($) {
$('a').click(function(){
    var num = $(this).data("value");
    $.post("products.php",{
        cat_num: num
    },function(data,status){
        $("#test_id").html(data);
    });
});

});

1 Ответ

0 голосов
/ 23 сентября 2019

Я вижу две возможные проблемы:

  1. HTML создается с помощью jquery

    Таким образом, ссылка может еще не существовать при добавленииобработчик щелчков.

  2. Вы не прекращаете поведение ссылки по умолчанию.Таким образом, вы можете просто перейти по ссылке до того, как сработает почтовый запрос.

Попробуйте делегировать обработчик события и используйте preventDefault()

jQuery(function ($) {
  $('body').on('click','a', function(e){
    e.preventDefault();
    var num = $(this).data("value");
    $.post("products.php",{
        cat_num: num
    },function(data,status){
        $("#test_id").html(data);
    });
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...