Javascript 使用jquery从文件上载中获取文件名,并将文件名设置为文本字段

Javascript 使用jquery从文件上载中获取文件名,并将文件名设置为文本字段,javascript,jquery,html,file,jsp,Javascript,Jquery,Html,File,Jsp,我必须得到上传文件的文件名,并将其设置为文本字段 我做了如下工作 <input type="file" name = "filename" id="upload"> <input type="text" name = "file" id="file"> 也试过这个 $('#upload').change(function() { var filename = $(this).val(); var lastIndex = filename.lastInde

我必须得到上传文件的文件名,并将其设置为文本字段

我做了如下工作

<input type="file" name = "filename" id="upload">
<input type="text" name = "file" id="file">
也试过这个

$('#upload').change(function() {
    var filename = $(this).val();
    var lastIndex = filename.lastIndexOf("\\");
    if (lastIndex >= 0) {
        filename = filename.substring(lastIndex + 1);
    }
    $('#file').val(filename);
});

但是文件名不显示在文本字段中。

您应该在DocumentReady内部使用jquery。你可能忘了加上那个。这是工作代码

$(文档).ready(函数(){
$('#upload')。更改(函数(){
var filename=$('input[type=file]').val().split('\\').pop();
log(文件名,$('#file');
var lastIndex=filename.lastIndexOf(“\\”);
$('#file').val(文件名);
});
});

您应该在DocumentReady内部使用jquery。你可能忘了加上那个。这是工作代码

$(文档).ready(函数(){
$('#upload')。更改(函数(){
var filename=$('input[type=file]').val().split('\\').pop();
log(文件名,$('#file');
var lastIndex=filename.lastIndexOf(“\\”);
$('#file').val(文件名);
});
});


不工作是什么意思?文本字段中不显示文件名对我来说很好,但对我来说不好。有什么问题吗?@Rohin检查我的答案。你说不工作是什么意思?文件名不显示在文本字段中,对我来说很好,但对我来说不好。有什么不对吗?@Rohin检查我的答案。这是答案。但对我来说,当我把脚本放在正文末尾时,它就起作用了。这是一个答案。但对我来说,当我把脚本放在body标记的末尾时,它就起作用了
$('#upload').change(function() {
    var filename = $(this).val();
    var lastIndex = filename.lastIndexOf("\\");
    if (lastIndex >= 0) {
        filename = filename.substring(lastIndex + 1);
    }
    $('#file').val(filename);
});