0

我已经在这个表单上工作了一段时间,试图让一个文本字段模仿一个文件输入字段(点击它会触发隐藏文件字段打开)。我使用了一些 Javascript 来更改文本字段的值,但我无法让它工作。在这里查看http://jsfiddle.net/ygMLm/

<script type="text/javascript">
 function getFile(){
   document.getElementById("uploaded").click();
 }
 function sub(obj){
    var file = obj.value;
    var fileName = file.split("\\");
    document.getElementById("upclicked").value = fileName[fileName.length-1];
    document.adupload.submit();
    event.preventDefault();
  }
</script>

<p><input type="text" id="upclicked" onclick="getFile()" placeholder="Select a File (960 Width JPEG)"></p>
<div style='height: 0px;width: 0px; overflow:hidden;'>
<input type="file" name="date" value="" id="uploaded" onclick="getFile()">

编辑:

$('#uploaded').change(function(){
    var file = obj.value;
    var fileName = file.split("\\");

    $('input[name=faux]').val(fileName[fileName.length-1]);
});
4

2 回答 2

2

将此添加到您的 jQuery 代码中以在 DOM 上运行:

$("#uploaded").change(
  function() {
    var fullPath = $(this).val();
    var splitPath = fullPath.split("\\");
    $("#upclicked").val(splitPath[splitPath.length - 1]);
  }
);
于 2013-08-08T17:32:32.533 回答
0

看下面的帖子

如何在文件选择上触发事件

有关如何在控件上使用change()事件的示例。file您应该在此事件中放置代码以更新文本框的值。

希望有帮助。

于 2013-08-08T17:10:27.467 回答