无法使用Jquery从行表中获取发布行ID到PHP的值ID
我知道我的问题可能是重复的,但我查看了大量问题,但都遇到了同样的问题,但没有一个解决方案适用于我。无法使用Jquery从行表中获取发布行ID到PHP的值ID
这很简单,获取item-id值并将其发布到del.php。 点击后我无法获得PHP中的POST值。
<?php
include '../include/db.php';
$result = $mysqli->query("SELECT * FROM usuario WHERE nivel = '1'");
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td class='item-id'>" . $row['id'] . "</td>";
echo "<td>" . $row['nome']. "</td>";
echo "<td>" . $row['email']. "</td>";
echo "</tr>";
}
?>
<script type="text/javascript">
$("tr").click(function() {
var id = $(this).find('.item-id').text();
$.post('del.php',{id: id},function(json){
window.location.href = "http://localhost/unesc/3/admin/del.php";
}, "json")
});
</script>
del.php
<?php
if (isset($_POST['id'])){
$id = $_POST['id'];
echo $id;
} else {
echo "erro";
}
?>
的del.php刚刚拿到$ _ POST [ '身份证']和回声它。 window.location在那里,所以我不必手动输入地址。 触发器可能不一定是一个Click,它可以是一个Button,对我来说炒作也很好。
编辑:得到POST与$ .ajax运行,但现在,与萤火虫我注意到,在del.php后保持返回空。
EDIT2:得到了del.php的帖子回复,但作为一个错误,它说'id'不存在。
如果THIS是你所需要的就是
<script type="text/javascript" language="javascript" src="jquery.min.js"></script>
<?php
//include '../include/db.php';
include 'includeconnect.php';
//$result = $mysqli->query("SELECT * FROM usuario WHERE nivel = '1'");
$result = mysql_query("SELECT * FROM usuario WHERE nivel = '1'");
while($row = mysql_fetch_array($result))
{
echo "
<table border='1'>
<tr>";
echo "<td class='item-id'>" . $row['id'] . "</td>";
echo "<td>" . $row['nome']. "</td>";
echo "<td>" . $row['email']. "</td>";
echo "</tr>
</table>
</br>";
}
echo"<div id='show_responce'>I am a text on page del2.php and I am pretty much useless apart from showing you where the responce will display</div>"
?>
<script type="text/javascript">
$("tr").click(function() {
var rep = $("#show_responce");
var id = $(this).find('.item-id').text();
var dataString = 'id=' + id;
$.ajax({
type: 'post',
url: 'del.php',
data: dataString,
success: function(html) {
rep.empty().append(html);
rep.fadeIn("slow")
}
});
});
</script>
这里是你修改del.php
<?php
if (isset($_POST['id'])){
$id = $_POST['id'];
echo "I am coming from del.php and the ID you clicked on is $id";
} else {
echo "error";
}
?>
的我用
del2.php两个页面的代码顺便说一句,因为我的帐户名声很低,我不能问你你想用这个window.location bu做什么无论如何。而不是你问什么,这基本上是为了确保del.php获得id的值,因为你会看到我在del2.php上显示它,这是我从中提出请求的页面。
非常感谢,这正是我需要的! –
这是一个乐于帮助:P – 2017-06-18 18:47:58
$("table > td").find(".item-id").val();
or
<?php
while($row = mysqli_fetch_array($result))
{
echo "<tr id='row'>";
echo "<td class='item-id'>" . $row['id'] . "</td>";
echo "<td>" . $row['nome']. "</td>";
echo "<td>" . $row['email']. "</td>";
echo "</tr>";
}
?>
<script>
var id = [];
var values = [];
$("#row > .item-id").each(function(index){
id.push($(this).attr("id")); // [a,b,c,....]
values.push($(this).text()); //[ Dummy1, Dummy2, Dummy3, Dummy4,..]
});
</script>
可能的错误:
}, "json")
这里最后一个参数的手段,该函数希望你从del.php文件返回有效的JSON字符串。经过
window.localtion.href
之后,您无法访问之前的数据,因为它会重定向到另一个页面,因此您将丢失之前的所有数据。
请显示你的php! – Jeff
等一下,在哪里/你想如何看$ _POST ['id']?在location.href之后?这是行不通的。 'json'中有什么?你看到它吗? – Jeff
添加了del.php代码 –