有没有办法使用javascript从文件夹中删除文件..?这是我的功能
function deleteImage(file_name)
{
var r = confirm("Are you sure you want to delete this Image?")
if(r == true)
{
var file_path = <?php echo dirname(__FILE__) . '/uploads/'?>+file_name;
file_path.remove();
}
}
答案 0 :(得分:16)
如果没有任何服务器端脚本,则无法删除任何内容。
您实际上可以使用ajax并调用服务器端文件来执行此操作。例如
制作文件delete.php
<?php
unlink($_GET['file']);
?>
并在javascript中
function deleteImage(file_name)
{
var r = confirm("Are you sure you want to delete this Image?")
if(r == true)
{
$.ajax({
url: 'delete.php',
data: {'file' : "<?php echo dirname(__FILE__) . '/uploads/'?>" + file_name },
success: function (response) {
// do something
},
error: function () {
// do something
}
});
}
}
答案 1 :(得分:2)
出于安全原因,您无法使用javascript删除文件。但是,您可以使用Ajax等服务器端语言(如PHP,ASP.NET等)的组合来执行此操作。下面是您可以在代码中添加的示例ajax调用。
$(function(){
$('a.delete').click(function(){
$.ajax({
url:'delete.php',
data:'id/name here',
method:'GET',
success:function(response){
if (response === 'deleted')
{
alert('Deleted !!');
}
}
});
});
});
答案 2 :(得分:0)
你不能这样做。实际上JavaScript is sandboxed
并且它不允许进行此类操作。
要删除文件,您需要服务器端脚本来实现此目的。这取决于您使用的服务器端语言处理的事实。
答案 3 :(得分:0)
Javascript是一种客户端脚本语言。如果要从服务器删除文件,请改用php。
答案 4 :(得分:0)
使用javascript无法做到这一点。但是如果文件驻留在服务器中,那么你可以使用php来做到这一点..你可以在php中使用unlink。
unlink($path_to_file);
答案 5 :(得分:0)
使用NodeJS,您也可以使用文件流取消链接文件。
它看起来像这样:
(define remove-first
(lambda (li num)
(if
(= num (car li))
(else
(remove-first (cdr li) num)
)
)
)
)
我相当肯定(虽然我没有尝试过)你可以在普通的javascript中导入fs node_module,但是你必须仔细检查。
如果您无法导入模块,您可以随时在您的机器上下载NPM,
var fs = require('fs');
fs.unlink('path_to_your_file+extension', function (err) {
//Do whatever else you need to do here
});
在某个目录(命令行)中,从该模块中获取要在标记页面上使用的javascript类。