JSFiddle - React, Tailwind, and code Playground

HTML

<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css">
<FORM METHOD="post" ACTION="[email protected]" ENCTYPE="multipart/form-data">
<input id="uploadFile" placeholder="Add files from My Computer"/>
<div class="fileUpload btn btn-primary">
<span>Browse</span>
<input id="uploadBtn" type="file" class="upload" multiple="multiple" name="browsefile"/>
</div>
<div id="upload_prev"></div>    
       
</FORM>

CSS

.fileUpload {
	position: relative;
	overflow: hidden;
	margin: 10px 3px;
}
.fileUpload input.upload {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	padding: 0;
	font-size: 20px;
	cursor: pointer;
	opacity: 0;
	background-color:#fff;
	filter: alpha(opacity=0);
}

.filenameupload {
	width:98%;	
}

#upload_prev {
	border:thin solid #000;
	width: 65%;
	padding:0.5em 1em 1.5em 1em;
}

#upload_prev span {
    display: flex;
	padding: 0 5px;
	font-size:12px;
}

p.close {
    margin: 0 5px 0 5px;
    cursor: pointer;
	padding-bottom:0;
}

JavaScript

$(document).on('click','.close',function(){
	$(this).parents('span').remove();

})

document.getElementById('uploadBtn').onchange = uploadOnChange;
    
function uploadOnChange() {
    document.getElementById("uploadFile").value = this.value;
    var filename = this.value;
    var lastIndex = filename.lastIndexOf("\\");
    if (lastIndex >= 0) {
        filename = filename.substring(lastIndex + 1);
    }
    var files = $('#uploadBtn')[0].files;
    for (var i = 0; i < files.length; i++) {
     $("#upload_prev").append('<span>'+'<div class="filenameupload">'+files[i].name+'</div>'+'<p class="close" >X</p></span>');
    }
    document.getElementById('filename').value = filename;
}