2016-11-12 11 views
1

我在使用PHP的HTML表格中顯示了一些記錄。我試圖做到這一點,當我點擊一行時,我可以在變量中存儲itemID(已被點擊)。出於某種原因,當我點擊我想要的行時,JavaScript中的警報不起作用,也不會發生。我錯過了一些微不足道的東西嗎?如何在PHP中通過鼠標單擊從html表中檢索行?

<?php 
    $con=mysqli_connect("localhost","root","mypassword","myDB"); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

    echo "<font color = 'darkgreen'> Connected to database. </font> <br>"; 

    $result = mysqli_query($con,"SELECT * FROM Inventory"); 

    echo "<table border='1'> 
    <tr> 
    <th>Item ID</th> 
    <th>Item Name</th> 
    </tr>"; 

    while($row = mysqli_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td>" . $row['itemID'] . "</td>"; 
    echo "<td>" . $row['itemName'] . "</td>"; 
    echo "</tr>"; 
    } 
    echo "</table>"; 

    mysqli_close($con); 
    ?> 

    <script type="text/javascript"> 
    $("tr.table").click(function() { 
     var tableData = $(this).children("td").map(function() { 
      return $(this).text(); 
     }).get(); 

     alert("Your data is: " + $.trim(tableData[0]) + " , " + $.trim(tableData[1])); 
    }); 
    </script> 
+1

依我之見,你調用jQuery的點擊一個與類「表」,但我沒有看到你設置該類在 –

+0

我怎麼能做到這一點正好?我不是太熟悉HTML – Yusha

+1

項目ID 商品名稱 只需將該類添加到表中,但你還是會需要告訴JS你只想要這個 itemID而不是全部在你的代碼中。 –

回答

3
<?php 
    $con=mysqli_connect("localhost","root","mypassword","myDB"); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

    echo "<h3 style='color: darkgreen;'> Connected to database. </h3> <br />"; 

    $result = mysqli_query($con,"SELECT * FROM Inventory"); 

    echo "<table border='1'> 
    <tr> 
    <th>Item ID</th> 
    <th>Item Name</th> 
    </tr>"; 

    while($row = mysqli_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td class='item-id'>" . $row['itemID'] . "</td>"; 
    echo "<td class='item-name'>" . $row['itemName'] . "</td>"; 
    echo "</tr>"; 
    } 
    echo "</table>"; 

    mysqli_close($con); 
    ?> 

    <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script> 
    <script type="text/javascript"> 
    $("tr").click(function() { 

     var id = $(this).find('.item-id').text(); 
     var name = $(this).find('.item-name').text(); 

     alert("Your data is: " + $.trim(id) + " , " + $.trim(name)); 
    }); 
    </script> 
+1

非常感謝你! – Yusha

1
echo "<tr onclick='showAlert($row['itemID'],$row['itemName']);'>"; 

請寫在你的桌子和創建Java腳本函數來顯示警報

<script> 
    function showAlert(TxtItemid,txtItemName){ 
     alert("Your data is: " + TxtItemid + " , " + txtItemName)); 
    } 
</script> 

這是順便alert.Please也試試這一件。這將爲你工作。它是在我的情況下工作。