2016-07-08 56 views
0

由於某種原因,我的變量$ startwith只是獲取home.php而不是以'#'開頭的鏈接(eg.href =「#A」)... This是我的JQuery形式JQuery獲取#只有鏈接

<ul> 
      <li><a href="home.php">Home</a></li> 
      <li class="dropdown"><a href="authors.php">Authors</a> 
       <div class="dropdown-content"> 
        <a href="viewAuthor.php">View Author Profile</a> 
      </li> 
      <li class="dropdown"><a href="books.php">Books</a> 
       <div class="dropdown-content"> 
        <a href="viewBookList.php">View Books</a> 
       </div> 
      </li> 

      <li class="dropdown"><a href="publishers.php">Publishers</a> 
       <div class="dropdown-content"> 
        <a href="publishers.php">View Publishers</a> 
        <a href="addPublisher.php">Add Publisher</a> 
       </div> 
      </li> 

      <li class="dropdown"><a href="genres.php">Genres</a> 
       <div class="dropdown-content"> 
        <a href="genres.php">View Genres</a> 
        <a href="addGenre.php">Add Genre</a> 
       </div> 
      </li> 
      <li><a href="signout.php">Sign Out</a> 
       <br> 
     </ul> 

     <br><br> 
<script> 
      $(function() { 
       $("a[href^='#']").on('click', function() { 

        var sW = $('a').attr('href').replace("#", ""); 

        $.get("getpublisher.php", {startsWith: sW}) 
          .done(function (data) { 
           $('#listData').html(data); 
          }); 

       }); 
      }); 
     </script> 
     <div align="center"> 
      <a href="#A">A | </a> 
      <a href="#B">B | </a> 
      <a href="#C">C | </a> 
      <a href="#D">D | </a> 
      <a href="#E">E | </a> 
      <a href="#F">F | </a> 
      <a href="#G">G | </a> 
      <a href="#H">H | </a> 
      <a href="#I">I | </a> 
      <a href="#J">J | </a> 
      <a href="#K">K | </a> 
      <a href="#L">L | </a> 
      <a href="#M">M | </a> 
      <a href="#N">N | </a> 
      <a href="#O">O | </a> 
      <a href="#P">P | </a> 
      <a href="#Q">Q | </a> 
      <a href="#R">R | </a> 
      <a href="#S">S | </a> 
      <a href="#T">T | </a> 
      <a href="#U">U | </a> 
      <a href="#V">V | </a> 
      <a href="#W">W | </a> 
      <a href="#X">X | </a> 
      <a href="#Y">Y | </a> 
      <a href="#Z">Z | </a> 

     </div> 

     <div id="listData"></div> 

getpublisher.php 在這種情況下,當我回聲$ startWith,它讓我home.php和我的查詢將返回我一個0..Any知道如何改變?

$startsWith = $_GET['startsWith']; 

$sql = "SELECT * FROM `publisher` WHERE publisher_name LIKE '"+$startsWith+"%' ORDER BY publisher_name ASC"; 
$r = mysqli_query($link, $sql); 
$rowcount = mysqli_num_rows($r); 
//echo $sql ; 

if ($rowcount > 0) { 


    while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) { 
     echo $row['publisher_name'] . "<br>"; 
    } 
} else { 
    echo "0 results"; 
} 
+0

這是我的查詢元素當我回應出來... SELECT * FROM'publisher' WHERE publisher_name LIKE'home.php%'ORDER BY publisher_name ASC –

回答

1

在點擊處理程序中,您需要點擊元素的href。

var sW = $('a').attr('href').replace("#", ""); 

這將讓第一<a>標籤的href在頁面

更改爲

var sW = $(this).attr('href').replace("#", ""); 

在事件處理器this是事件發生