カスタム ボタンにスタイル設定したファイル入力がありますが、ユーザーがファイルをアップロードするときにアップロード イメージを保持できません。ファイル名のテキストに置き換えられますが、画像も保持したいと思います。私はそれが単純なことだと知っていますが、それを理解できないようです。コードは次のとおりです。
HTML:
<div id="file"><img src="~/Images/choosefile.png" /></div>
<input type="file" name="file"/>
Javascript:
var wrapper = $('<div/>').css({ height: 0, width: 0, 'overflow': 'hidden' });
var fileInput = $(':file').wrap(wrapper);
fileInput.change(function () {
$this = $(this);
$('#file').text($this.val().substring(12, 75));
})
$('#file').click(function () {
fileInput.click();
}).show();
CSS:
`#file
{
display:none;
cursor: pointer;
}`
**更新 - 誰かがそれを使用したい場合、これがどのようになったかです* * *
HTML:
<div id="file" style="margin-right:10px;"><img src="~/Images/choosefile.png" style="margin-bottom:-5px; padding-right:10px;"/><span style="border-left-width:10px;"></span></div>
<input type="file" name="file"/>
Javascript:
var wrapper = $('<div/>').css({ height: 0, width: 0, 'overflow': 'hidden' });
var fileInput = $(':file').wrap(wrapper);
fileInput.change(function () {
$this = $(this);
$('#file>span').text($this.val().substring(12, 75));
})
$('#file').click(function () {
fileInput.click();
}).show();
CSS:
`#file
{
display:none;
cursor: pointer;
}`