Я потратил пару часов на выполнение всех арифметических правил, не используя eval ()
, и, наконец, я опубликовал пакет на npm string-math . Все в описании. Наслаждайтесь
<input type="file" name="img1" id="img1" onchange="document.getElementById('file_name').value = this.value">
<input type="text" name="file_name" id="file_name">
Вы можете добавить .split('\\').pop()
в конец this.value
, если хотите избавиться от c:\fakepath
Без c:\fakepath
<input type="file" name="img1" id="img1" onchange="document.getElementById('file_name').value = this.value.split('\\').pop().split('/').pop()">
<input type="text" name="file_name" id="file_name">
yourFileInputNode.on('change', function(e){
var file = e.target.files[0];
// you can get file name from file var and set it anewhere
})
Ниже показано только имя файла в текстовом поле file_name.
<input type="file" name="img1" id="img1" onchange="updateFileName()">
<input type="text" name="file_name" id="file_name">
<script>
function updateFileName() {
var img1 = document.getElementById('img1');
var file_name = document.getElementById('file_name');
var fileNameIndex = img1.value.lastIndexOf("\\");
file_name.value = img1.value.substring(fileNameIndex + 1);
}
</script>
вы можете использовать onchange в jquery, например
$("#img1").change(function(e){
$("#file_name").val($("#img1").val().split('\\').pop().split('/').pop(););
});
, добавить эту строку в <head>
html
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
jquery
? Что делать, если решение может быть предоставлено только с ним? Вы не отвечаете, потому что нет тега jQuery? Я человек, который плохо разбирается в javascript и должен использовать jQuery даже для мелочей. Этот ответ также является решением, и я не вижу причин для его сокращения. +1
– I Can Has Kittenz
12 March 2014 в 13:46
Это покажет имя файла, используя jQuery
$("#img1").change(function(e){
var fname=$("#img1").val().split('\\').pop().split('/').pop();
$('#file_name').val(fname);
});
<input type="file" name="img1" id="img1" onchange="updateFileName()"><br><input type="hidden" name="file_name" id="file_name"><script>
function updateFileName() {
var img1 = document.getElementById('img1');
var file_name = document.getElementById('file_name');
var fileNameIndex = img1.value.lastIndexOf("\\");
file_name.value = img1.value.substring(fileNameIndex + 1);
}
</script>
onchange="document.getElementById('file_name').value = this.value.split('\\').pop().split('/').pop()"
– SajithNair 12 March 2014 в 13:34