2017-04-09 24 views
0

現在、私はテキストエディタとして動作するプログラムを作っています。タイトルの名前を変更できるセクションがあります。保存すると、それはdocument.getElementById('title').innerHTMLになり、.txtという名前になります。例えばJavascript/jQueryを使ってファイルの名前を読む

タイトルのdivは「ドキュメント」のinnerHTMLプロパティを持っていた場合、ファイルは「ドキュメント.txt」と呼ばれます。

私の問題は、ファイルをアップロードしてそのファイル名を取得したいということです。例えば

私は、「ドキュメント.txt」というファイルをアップロード、および機能は、タイトル「ドキュメント」を作ります。 (私はそれが保存されたときに実際に.txtファイルを作成するタイトルと+= '.txt'には表示されませ作るために.replace('.txt','')を使用しています。

誰でも<input type='file'>文字列にを使用してアップロードされたドキュメントのファイル名を作成する方法を知っています他の場所で使用すること。ここ

は視点でそれを置くためにいくつかのコードです:?

var id = function(id){return document.getElementById(id)}; 

function readText(that) 
    { 
     var reader = new FileReader(); 
     reader.onload = function(e) 
      { 
       var output = e.target.result, 
        name = FILENAMEFIND(); 
       id('page').innerHTML = output; 
       id('title').innerHTML = name; 
      } 
     reader.readAsText(that.files[0]); 
    } 
+0

入力可能な値の重複の可能性= "ファイル"?](http://stackoverflow.com/questions/5903323/cant-get-value-of-input-type-file) –

+0

はい、正しいですしかし、それは私が望んでいない '' C:\ fakepath \ "'を含んでいます。 replace( 'C:\ fakepath \'、 '') ''は動作しますが、ファイルは常にCドライブにありますか?どのようにそれを行うにはどのようなアイデア? –

+0

あなたが達成しようとしていることは明確ではありませんか? – guest271314

答えて

0

[OK]を、私は自分自身をそれを考え出し:

var id = function(id){return document.getElementById(id)}, 
    input = id("upfile"), 
    file = input.value.split("\\"), 
    fileName = file[file.length-1]; // Take purely the file name 
    id('title').innerHTML = fileName; // Outputted to title div 
関連する問題