提问者:小点点

Document.GetElementById()。值不工作


我一直在做一个关于员工的项目,所以在mysql数据库中有一些数据。 所以为了得到它并将其放入html表中,我使用了PHP。

$sql = "SELECT * FROM Stock_Management.`staff_details`";
$result = mysqli_query($conn, $sql);

if(mysqli_num_rows($result)){
    while($row = mysqli_fetch_assoc($result)){
        echo "<tr>
                <td scope='row'>".$row['id']."</td>
                <td>".$row['fname']."</td>
                <td>".$row['lname']."</td>
                <td>".$row['phno']."</td>
                <td>".$row['employee_address']."</td>
                <td>".$row['join_date']."</td>
                <td><i class='far fa-edit btnedit' value=".$row['id']." name='btn-edit' id='btn-edit' onclick='edit()' style='color: green; cursor: pointer'></i></td>
                <td><i class='far fa-trash-alt btndelete' value='".$row['id']."' name='btn-delete' id='btn-delete' onclick='delete()' style='color: tomato; cursor: pointer'></i></td>
            </tr>";
    }
}

因此,如果您看到最后两个td标记,您可以看到我使用了font awesome,并为它们分别赋予了,以及nameid属性。 和onclick事件。

echo "<script>
    function edit(){
        let data_id = document.getElementById('btn-edit');
        console.log(data_id.value);
    }
</script>";

但每次我在控制台中得到undefined。 我的代码有什么问题。 请帮帮我!! 求你了。


共1个答案

匿名用户

为了获得该值,您可以将js代码更改为:

function edit(){
    console.log(event.target.value)
}

通过点击它,浏览器创建事件,您可以将它作为目标来获取点击值。

另外,在value=“.$row['id']值附近缺少”‘“。 请记住,您不应该在页面上出现多个相同id,因此,如果您有多个具有此id的元素,将btn-edit作为目标将永远无法工作。

您不应该对按钮使用“”标记