- ファイル選択とプレビューの表示: HTMLのフォームにを追加し、JavaScriptで選択された画像のプレビューを表示します。
<input type="file" id="imageInput">
<img id="previewImage" src="#" alt="Preview Image" style="display: none;">
<script>
$(document).ready(function() {
$('#imageInput').change(function() {
var input = this;
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function(e) {
$('#previewImage').attr('src', e.target.result);
$('#previewImage').show();
}
reader.readAsDataURL(input.files[0]);
}
});
});
</script>
- 画像のアップロード: フォームの送信時に、選択された画像をサーバーにアップロードします。以下のコードは、Ajaxを使用して非同期で画像をアップロードする例です。
<form id="uploadForm" action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" id="imageInput">
<input type="submit" value="Upload">
</form>
<script>
$(document).ready(function() {
$('#uploadForm').submit(function(e) {
e.preventDefault();
var formData = new FormData(this);
$.ajax({
url: $(this).attr('action'),
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(response) {
// アップロード成功時の処理
},
error: function(xhr, status, error) {
// アップロードエラー時の処理
}
});
});
});
</script>
これらのコード例を参考にして、画像のプレビューとアップロードを実装してみてください。必要に応じてサーバーサイドの処理も適切に実装する必要があります。