无法获取onchange以触发innerHTML更新

Cannot get onchange to trigger innerHTML update

本文关键字:innerHTML 更新 获取 onchange      更新时间:2024-01-10

好的,我想让我的文件上传按钮更改跨度,我必须让用户知道文件已经被选中。

<script type="text/javascript">
function get_filename(obj,fileupid) {
    var file = obj.value;
    var disploc = fileupid.value;
    document.getElementById('current_file_' + disploc).innerHTML='Attached: ' + file;
}
</script>
...
<input type="file" id="file-503" onchange="get_filename(this,'file-503');" /> <span id="current_file_file-503">&nbsp;</span>

有人能看到这个代码有问题吗?实际的输入和跨度ID是可变的,但在这种情况下,它们就是这样输出的。

如果我将innerHTML更改直接输入到地址栏或草稿行(将"file-503"代替dispoc,当然只使用"test"作为innerHTML输出),那么它就可以工作了。。但在实际使用中,什么也没发生。。

我已经绞尽脑汁好几个小时了,什么都说不通。

请帮忙!!

fileupid是传递给函数的参数,它是一个字符串,它没有值?

function get_filename(obj,fileupid) {
    var file = obj.value;
    var disploc = fileupid;
    document.getElementById('current_file_' + disploc).innerHTML='Attached: ' + file;
}

FIDDLE