Ajax Call использует список Unorderd для предоставления параметра - PullRequest
1 голос
/ 11 ноября 2010

В настоящее время я использую JQuery Ajax для извлечения и отображения некоторых данных следующим образом.

/* PHP to select data and create Unordered list */

   <?php

    echo "<ul class=\"ctyul\">";
      while ($rowC = mysql_fetch_array($result))
     {
     echo "<li class=\"ctyli\"><a href=\"#"."&" .rawurlencode($rowC['PLAN']) ."\"" .">"   . $rowC['PLAN'] .  "</a></li>";
     };
     echo "</ul>";

     ?>

/* JQuery to select the li of obove list */

       $('Div.ctydiv ul.ctyul li.ctyli').click(function(){

       urlqueryC = location.href;
       urlpartsC = urlqueryC.split('&');
       urlcounty  = urlpartsC[1]; 

       $.ajax({
       url: 'php/cpdetails.php?search-n='+urlcounty,
       success: function (data) {
               $('#Pinfo').html(data);
            }
           });

Когда пользователь нажимает на элемент списка, он добавляет $ строку [План] к URL, затем я используюдобавленное имя PLAN для извлечения набора данных с помощью другого сценария PHP (cpdetails.php? search-n = urlcounty) и отображения данных в div.

Все это работает, но для этого требуется два щелчка мышьюотобразите данные, сначала добавьте имя «ПЛАН» в URL, а второй щелчок отобразит данные.

Я хотел бы сделать это в один клик.

Как я могу получитьимя $ row [Plan] для вызова Ajax без использования URL-адреса в качестве способа передачи имени PLAN.

1 Ответ

2 голосов
/ 11 ноября 2010

Присоедините обработчик кликов к ссылке и получите атрибут href:

(более приятный HTML)

<ul class="ctyul">
<?php while(($rowC = mysql_fetch_array($result))): ?>
    <li class="ctyli"><a href="#<?php echo rawurlencode($rowC['PLAN']) ?>"><?php echo $rowC['PLAN'] ?></a></li>
<?php endwhile; ?>
</ul>

и JS:

$('Div.ctydiv ul.ctyul li.ctyli a').click(function(e){
    e.preventDefault();
    urlcounty  = $(this).attr('href').substr(1); 

    $.ajax({
        url: 'php/cpdetails.php?search-n='+urlcounty,
        success: function (data) {
            $('#Pinfo').html(data);
        }
    });
 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...