在php中删除没有使用ajax刷新页面的记录

我正在CakePHP 2.x上工作,但我认为这个问题与Cakephp没有任何关系。我想删除一个没有页面刷新的文件。在php中删除没有使用ajax刷新页面的记录

HTML/PHP:

<div class = "success" style="display:none;">Deleted successfully </div> 

<div class = "error" style="display:none;">Error </div>

<a href="javascript:void(0)" class="button icon-trash" title = "delete" onclick="openConfirm('<?php echo $filename; ?>','<?php echo $idImage; ?>');"></a>

的JavaScript:

function openConfirm(filename, idImage) { 

$.modal.confirm('Are you sure you want to delete the file?', function() {

deleteFile(filename, idImage);

}, function() {

});

};

function deleteFile(filename, idImage) {

var filename = filename;

$.ajax({

type: "POST",

data: {

idImage: idImage

},

url: "http://localhost/bugshot/deleteFile/" + filename,

success: function (data) {

if (data == 1) {

$(".success").fadeIn(500).delay(2000).fadeOut(500);

} else {

$(".error").fadeIn(500).delay(2000).fadeOut(500);

}

},

error: function() {

alert("error");

}

});

}

我的图片是在foreach循环 此代码显示图像

的foreach($文件作为$文件):?>

<?php $downloadUrl = array('controller' => 'bugshot', 'action' => 'downloadImages', $files['Image']['filename'], '?' => array('download' => true)); 

$imageUrl = array('controller' => 'bugshot', 'action' => 'downloadImages', $files['Image']['filename']);

?>

<?php echo $this->Html->link(

$this->Html->image($imageUrl),

$downloadUrl,

array('class' => 'frame', 'escape' => false)

);?>

删除链接

<a href="javascript:void(0)" class="button icon-trash" title = "deleteImage" onclick="openConfirm('<?php echo $files['Image']['filename']; ?>','<?php echo $files['Image']['idImage'];; ?>');"></a> 

代码映像之后,除了伟大工程,或记录被删除/图像仍然显示在页面上,直到它被刷新的纪录。我该如何解决?

回答:

您需要移除它与javascript。

$.ajax({ 

...

success: function (data) {

if (data == 1) {

$(".success").fadeIn(500).delay(2000).fadeOut(500);

$('img[src="/pathToImg/' + filename + '"]').remove(); // Remove by src

// $('#' + idImage).remove(); // Remove by ID.

} else {

$(".error").fadeIn(500).delay(2000).fadeOut(500);

}

}

...

});

注:var filename = filename;没什么意思,因为你要分配文件名参数具有相同名称的新变量。你可以删除它。

以上是 在php中删除没有使用ajax刷新页面的记录 的全部内容, 来源链接: utcz.com/qa/257211.html

回到顶部