簡體   English   中英

如何將從循環中獲得的 Ajax 變量附加到<a href='' '/a>標簽中</a>

[英]How to append a Ajax variable obtained from a loop into a <a href='' '/a> tag

大家好,我是 Ajax 的新手,我正在使用 ajax 從我的數據庫中以對象數組的形式從單獨的 PHP 文件中獲取值並將它們顯示在表中,一切正常,但我想創建一個鏈接和附加從數組中獲得的 ID,以便我可以向另一個 PHP 文件發送 GET 請求,該文件將對該特定行進行操作。

PHP 文件的代碼

<?php
include 'Module/Credentials.php';
$sql="SELECT * FROM queries";
$query=  mysqli_query($connection, $sql) or die(mysqli_error($connection));
$data = array();
while ($row = mysqli_fetch_object($query))
{
    array_push($data, $row);
}
echo json_encode($data);
`
Ajax code

javascript
 `   var ajax=new XMLHttpRequest();
                    var method="GET";
                    var url="getMessages.php";
                    var asynchronous=true;
                    ajax.open(method, url,asynchronous);
                    ajax.send();
                    ajax.onreadystatechange=function(){
                        if(this.readyState==4 && this.status==200){
                          var data=JSON.parse(this.responseText);
                           console.log(data);
                           var html="";
                           for(var b=0;b<data.length;b++){
                               var ID=data[b].ID;
                               var name=data[b].name;
                               var email=data[b].email;
                               var subject=data[b].subject;
                               var message=data[b].message;
                               var link = "management.php?delete=";
                                $(document).ready(function(){ 
                                  $('.link').attr('href', link+ID);
                                });
                            console.log(data.length);
                                 html +="<tr>";
                                 html +="<td>"+"<a class='link' href=''>Delete</a>"+"</td>";
                                 html +="<td>" + name + "</td>";
                                 html +="<td>" + email + "</td>";
                                 html +="<td>" + subject + "</td>";
                                 html +="<td>" + message + "</td>";
                                html +="</tr>";
                               

                           }
                           document.getElementById("messages").innerHTML += html;
                        } 
                    }`

the ID on the link is not changing its just displaying a single ID=6

Solution

   ` var ajax=new XMLHttpRequest();
                    var method="GET";
                    var url="getMessages.php";
                    var asynchronous=true;
                    ajax.open(method, url,asynchronous);
                    ajax.send();
                    ajax.onreadystatechange=function(){
                        if(this.readyState==4 && this.status==200){
                          var data=JSON.parse(this.responseText);
                           console.log(data);
                           var html="";
                           for(var b=0;b<data.length;b++){
                               var ID=data[b].ID;
                               var name=data[b].name;
                               var email=data[b].email;
                               var subject=data[b].subject;
                               var message=data[b].message;
                               var link = `management.php?delete=${ID}`;
                                 html +="<tr>";
                                 html +=`<td><a href='${link}'>Delete</a></td>`;
                                 html +="<td>" + name + "</td>";
                                 html +="<td>" + email + "</td>";
                                 html +="<td>" + subject + "</td>";
                                 html +="<td>" + message + "</td>";
                                html +="</tr>";
                               

                           }
                           document.getElementById("messages").innerHTML += html;
                           
                        }
                    }`
but i'm getting error messages in NetBeans IDE 8.0.2 like
Expected an operand but found error
    `var link== `management.php?delete=${ID}`;`
Expected an operand but found error
    `html +=`<td><a href='${link}'>Delete</a></td>`;`
Expected eof but found error   ` }`

像這樣嘗試模板文字:

var link = `management.php?delete=${ID}`;

如果你想要它在html

html +=`<td><a class='link' href='${link}'>Delete</a></td>`;

請注意,我正在使用反勾號`

更多信息在這里

在選擇 HTML 元素之前,您必須先創建它。 創建之后就可以操作了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM