我一直在编写一个打开对话框的脚本,在对话框中有一个动态表,其数据从我的一个数据库中拉出。我在所有记录旁边放了删除按钮,以便员工可以删除不必要的记录 我试图使用一个触发Ajax请求的click函数,然后立即从数据库中删除记录 但是当我点击删除按钮时它会关闭对话框并且根本不删除任何内容。如果有任何帮助,我已经复制了我的代码。
非常感谢所有帮助:)
//including all jquery library
<script>
$(function() {
$( "#dialog" ).dialog({
autoOpen: false,
buttons: {
"Add to Log": function() {
$.ajax({
type: 'POST',
url: "check_add.php",
data: $('#checkup').serialize(),
success: function(data) {
if(data == 0){//Failure
alert('Data was NOT saved in db!');
}
}
});
$( this ).dialog( "close" );
},
Exit: function() {
$( this ).dialog( "close" );
}
}
});
$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
return false;
});
$( "#reminder" ).dialog({
width: 471,
autoOpen: false,
buttons: {
Exit: function() {
$( this ).dialog( "close" );
}
}
});
$( "#remind" ).click(function() {
$( "#reminder" ).dialog( "open" );
return false;
});
$(".Delete").click(function() // here the delete function
{
var $this = $(this);
var rowid = $this.attr('name');
$.ajax({
type: "POST",
url: 'check_del.php',
data: {
'id': rowid
},
success: function(data) {
if(data == 1){//Success
alert('Sucess');
}
if(data == 0){//Failure
alert('Data was NOT saved in db!');
}
}
});
});
});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<button id="opener">Add Damage</button>
<button id="remind">Reminder</button>
<div id="dialog" style="font-size:small;">
<form name="checkup" method="post" id="checkup">
<table>
<tr><td>
<strong>Cases:</strong></td><td><input name="cases" type=text placeholder="Cases ID" maxlength="7" style="width:129px;"></td>
</tr>
<tr>
<td><strong>Comments:</strong></td>
<td> <textarea name="comment" placeholder="Comments Box"></textarea></td>
</tr>
</table>
</form>
</div>
<?php
//数据库连接东西
$sql="select * from $tbl_name";
$result=mysql_query($sql);
?>
<div id="reminder" style="font-size:small;">
<form name="remind" method="post" id="remind">
<table bordercolor="#000000" border="1" style="border:thin;">
<th>Class</th>
<th>Cases</th>
<th>First Name</th>
<th>Last Name</th>
<th>Model</th>
<th>Comments</th>
<th> </th>
<?
while($rows=mysql_fetch_array($result)){
$cases=strtoupper($rows['cases']);
?>
<tr>
<td><? echo $rows['hg']; ?></td>
<td><? echo $cases;?></td>
<td><? echo $rows['firstname']; ?></td>
<td><? echo $rows['surname']; ?></td>
<td><? echo $rows['model']; ?></td>
<td><? echo $rows['comments']; ?></td>
<td><button name="<?php echo $rows['id']; ?>" class="Delete">Delete</button></td>
</tr>
</table>
<?
}
?>
</form>
</div>
答案 0 :(得分:1)
经过大量测试后,我稍微改变了我的代码。我已经粘贴了html的工作部分,用于按钮和jquery代码
HTML BUTTON
<input name="<? echo $rows['id'];?>" type="button" value="Delete" />
Jquery函数
$("input[type='button']").on('click', function() {
var $this = $(this);
var userid = $this.attr('name');
$.ajax({
type: "GET",
url: 'check_del.php',
data: {
'id': userid
},
success: function(data) {
if(data == 1){//Success
alert('Sucess');
}
if(data == 0){//Failure
alert('Data was NOT saved in db!');
}
}
});
});
答案 1 :(得分:0)
试试这个
$(".Delete").live('click',function() {
// your code go here
});