如何使用jQuery的确认框,从数据库中的Zend删除行?
我是新来的Zend框架和jQuery。我试图删除确认返回值的基础上,从数据库中的行()
。但我遇到的问题是,如果我preSS yes或no两次选择行被删除。我需要确认,只有当我preSS是,只有选定的行会被删除。有一件事我使用Zend框架。
I am new to Zend Framework and jQuery. I am trying to delete a row from database on the basis of the returned value of confirm()
. But the problem I am having is that if I press yes or no both times the selected row is deleted. I need to confirm that only when I press yes that only the selected row will be deleted. One thing I am using Zend Framework.
我的codeS给出如下:
My codes are given below:
<html>
<head>
<style type="text/css" rel="stylesheet">
#simplemodal-overlay {background-color:#000;}
#simplemodal-container {background-color:#333; border:8px solid #444; padding:12px;}
#simplemodal-container a.modalCloseImg {
background:url(x.png) no-repeat; /* adjust url as required */
width:25px;
height:29px;
display:inline;
z-index:3200;
position:absolute;
top:-15px;
right:-18px;
cursor:pointer;
}
</style>
<script type="text/javascript" src="/jQuery.js"> </script>
<script type="text/javascript" src="/jquery.simplemodal-1.4.2.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//alert("test");
$(".delete").click(function(e){
//$('p').attrib('id');
//e.preventDefault();
//$("#deleteForm").modal();
if(confirm("test"));
});
});
</script>
</head>
<center>
<?php
echo "Student List";
?>
<p><a href="<?php echo $this->url(array('controller'=>'index',
'action'=>'add'));?>">Add new student</a></p>
<table border="1">
<tr>
<th>Name</th>
<th>Email</th>
<th>Phone</th>
<th>Action</th>
</tr>
<?php foreach($this->students as $student) : ?>
<tr>
<td><?php echo $student->name;?></td>
<td><?php echo $student->email;?></td>
<td><?php echo $student->phone;?></td>
<td>
<a href="<?php echo $this->url(array('controller'=>'index',
'action'=>'edit', 'id'=>$student->id));?>">Edit</a>
<a class="delete" href="<?php echo $this->url(array('controller'=>'index',
'action'=>'delete','id'=>$student->id));?>">Delete</a>
</td>
</tr>
<?php endforeach; ?>
</table>
</center>
</html>
IndexController.php
<?php
class IndexController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
// $test = new Application_Model_DbTable_Email();
}
public function indexAction()
{
$this->_helper->layout->disableLayout();
$students = new Application_Model_DbTable_Students();
$this->view->students = $students->fetchAll();
}
public function addAction()
{
$form = new Application_Form_Student();
$form->submit->setLabel('Add');
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
$name = $form->getValue('name');
$email = $form->getValue('email');
$phone = $form->getValue('phone');
// $image = $form->getValue('image');
$students = new Application_Model_DbTable_Students();
$students->addStudent($name, $email,$phone);
$this->_helper->redirector('index');
} else {
$form->populate($formData);
}
}
}
public function editAction()
{
$modelStudents = new Application_Model_DbTable_Students();
$id = (int) $this->_getParam('id');
$student = $modelStudents->fetch($id);
$form = new Application_Form_Student($student->email);
$form->submit->setLabel('Save');
$this->view->form = $form;
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
$id = (int)$form->getValue('id');
$name = $form->getValue('name');
$email = $form->getValue('email');
$phone = $form->getValue('phone');
$students = new Application_Model_DbTable_Students();
$students->updateStudent($id, $name, $email, $phone);
$this->_helper->redirector('index');
} else {
$form->populate($formData);
}
} else {
$id = $this->_getParam('id', 0);
if ($id > 0) {
$form->populate($modelStudents->getStudent($id));
}
}
}
public function deleteAction()
{
//$id = $this->getRequest()->getPost('id');
$students = new Application_Model_DbTable_Students();
$id = $this->_getParam('id', 0);
$students->deleteStudent($id);
$this->_helper->redirector('index');
}
//echo $test;
}
在此先感谢, enamul
Thanks in advance, enamul
您使用的是确认错误,和你贴code也有很多疑虑。
格式化你的链接如下
You are using confirm incorrectly, and your posted code also has lots of doubts.
format your links as below
<a class="delete" id="delete_link_<?php echo $student->id?>" href="jacascript:void(0)" onclick="deleteRecord('<?php echo $this->url(array('controller'=>'index',
'action'=>'delete','id'=>$student->id));?>',<?php echo $student->id?>)">Delete</a>
和添加此功能,您的JS
and add this function to your js
<script>
function deleteRecord(url,id)
{
if(confirm('test')){
$.ajax({url:url,success:function(data){alert('Deleted Record')
$("#delete_link_"+id).hide();
}});
}
}
</script>
编辑:
<script type="text/javascript">
//
$(document).ready();
function deleteRecord(url)
{
if(confirm('test')){
$.ajax({url:url,success:function(data){alert('Deleted Record')}});
}
}
</script>