我无法将ID发送到PHP以删除该行,我收到此错误
TypeError:' checkValidity'调用了一个没有实现的对象 interface HTMLButtonElement。
如果我这样做脚本
jQuery(document).on("click",".del_beneficiaries",function(){
var id = jQuery(this);
jQuery.ajax({
type: "POST",
dataType: "json",
url: "ben_del.php",
data: {
"id" : id
}
});
});
但如果执行此脚本,则他们的数据不会发送到我的PHP
jQuery(document).on("click",".del_beneficiaries",function(){
var id = [];
jQuery(".beneficiaries_rows").each(function(){
var rows = jQuery(this).attr("data-id");
id.push(rows);
});
jQuery.ajax({
type: "POST",
dataType: "json",
url: "ben_del.php",
data: {
"id" : id
}
});
});
如果我使这个脚本仍然没有数据发送到PHP
jQuery(document).on("click",".del_beneficiaries",function(){
var id = [];
jQuery(".data-id").each(function(){
var rows = jQuery(this).closest(".beneficiaries_rows");
id.push(rows);
});
jQuery.ajax({
type: "POST",
dataType: "json",
url: "ben_del.php",
data: {
"id" : id
}
});
});
这是 HTML
<table style="border: 2px solid black;margin:auto;">
<tr>
<th width="100%"><center>Name<center></th>
<th><center>Action</center></th>
</tr>
<?php
while($row1 = mysql_fetch_array($result1)){
echo "<tr class='beneficiaries_rows' id='".$row1['id']."' value='".$row1['ben_id']."'>";
echo "<td>".$row1['name']."</td>";
echo "<td>";
echo "<center><button class='del_beneficiaries'>X</button><center>";
echo "</td>";
echo "</tr>";
}
?>
</table>
答案 0 :(得分:1)
您需要通过其类引用tr元素,然后检索id。我建议你阅读jquery文档[http://api.jquery.com/]。 此外,您可以在代码中使用$而不是JQuery。 也许这是一个功课,我无法为您提供完整的解决方案。
提示:$(&#39; .class&#39;)。attr(...
答案 1 :(得分:1)
您正在将JQuery的click事件用于不同的类(del_beneficiaries),并且您的删除ID存储在不同的类(beneficiaries_rows)中。我使用HTML和静态数据以及你的First JS Script获取ID以删除行。
您的HTML:
<table style="border: 2px solid black;margin:auto;">
<tr>
<th width="100%"><center>Name<center></th>
<th><center>Action</center></th>
</tr>
<?php
//while($row1 = mysql_fetch_array($result1)){
echo "<tr class='beneficiaries_rows' id='1' value='22'>";
echo "<td>".'Ravi'."</td>";
echo "<td>";
echo "<center><button class='del_beneficiaries'>X</button><center>";
echo "</td>";
echo "</tr>";
//}
?>
你的剧本:
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script>
jQuery(document).on("click",".del_beneficiaries",function(){
var id = jQuery('#1').attr('value');
alert(id);
jQuery.ajax({
type: "POST",
dataType: "json",
url: "ben_del.php",
data: {
"id" : id
}
});
});
答案 2 :(得分:0)
我得到了答案,我需要首先调用行并给它一个ben_id
(主键)就像这样
jQuery(document).on("click",".del_beneficiaries",function(){
var row = jQuery(this).closest(".beneficiaries_rows"); //call the rows
var id = row.attr("data-id"); //give the rows the specific ben_id
jQuery.ajax({
type: "POST",
dataType: "json",
url: "ben_del.php",
data: {
"id" : id
}
});
});