Отправьте запрос AJAX, щелкнув ссылку внутри динамически созданного начального аккордеона - PullRequest
0 голосов
/ 03 января 2019

У меня есть динамически созданный аккордеон, подобный этому:

<div class="panel-body">
<div class="panel-group" id="accordion">

   <div class="panel panel-default" >
      <div class="panel-heading">
         <h5 class="panel-title small">
            <a data-toggle="collapse" data-parent="#accordion" href="#1" class="tasktitle" data-id="1" id="opentask">$name</a>
         </h5>
      </div>
      <div id="1" class="panel-collapse collapse">
         <div class="panel-body">body text</div>
      </div>

   <div class="panel panel-default" >
      <div class="panel-heading">
         <h5 class="panel-title small">
            <a data-toggle="collapse" data-parent="#accordion" href="#2" class="tasktitle" data-id="2" id="opentask">$name</a>
         </h5>
      </div>
      <div id="2" class="panel-collapse collapse">
         <div class="panel-body">body text</div>
      </div>

   </div>
</div>

Тогда у меня есть статическое значение, подобное $ loggeduser , которое всегда одинаково для зарегистрированного пользователя.

Поскольку это динамически создаваемый аккордеон, хотя идентификатор каждой секции аккордеона различен

Я пытаюсь достичь, когда пользователь нажимает, чтобы открыть аккордеон, в то же время, чтобы выполнить запрос AJAX.который отправит значение $ loggeduser вместе с идентификатором аккордеона, в котором размещена ссылка, по которой щелкнули.

Это ajax, который я использую для отправки информации вфайл

$(function(){    
   $("#opentask").click(function(){
      $.get("markread-task.php?id=ID&user=LOGGEDUSERCOMMENT",function(data){
     });
   });
  return false;    
});

но я не могу понять, как получить другой идентификатор в этой ссылке

markread-task.php?id=ID&user=LOGGEDUSERCOMMENT

, например, если пользователь нажимает на ссылку, которая открывает аккордеон 2, ajaxотправляет ссылку как

markread-task.php?id=2&user=LOGGEDUSERCOMMENT

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 03 января 2019

Прежде всего, идентификатор должен быть уникальным для каждого элемента. Вместо этого используйте класс или имя. Таким образом, вы не можете иметь два элемента с id = "opentask".

Чтобы получить значение идентификатора данных в вашем методе клика:

$(function(){    
   $(".opentask").click(function(){
      var id = $(this).data('id');
      $.get("markread-task.php?id="+id+"&user=LOGGEDUSERCOMMENT",function(data){
     });
   });
  return false;    
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...