编写一个JSP页面selectImage.jsp,该页面使用select(下拉列表)提供一些图片名,用户选择一个一个图片名,单击提交键提交给当前页面,然后当前页面显示出用户选择的图片
时间: 2023-05-26 21:01:53 浏览: 100
<html>
<head>
<title>Select Image</title>
</head>
<body>
<h1>Select an Image</h1>
<form action="selectImage.jsp" method="POST">
<select name="imageName">
<option value="image1.jpg">Image 1</option>
<option value="image2.jpg">Image 2</option>
<option value="image3.jpg">Image 3</option>
</select>
<br/><br/>
<input type="submit" value="Submit">
</form>
<h2>Selected Image</h2>
<%
String imageName = request.getParameter("imageName");
if (imageName != null) {
out.println("<img src=\"" + imageName + "\" alt=\"Selected Image\" />");
}
%>
</body>
</html>
相关问题
编写一个JSP页面selectImage.jsp,该页面使用select(下拉列表)提供一些图片名,用户选择一个一个图片名,单击提交键提交给当前页面,然后当前页面显示出用户选择的图片(图片文件自己准备)
好的,关于您的第一个问题,这是一个比较基础的JSP页面的实现,我们可以提供以下代码供您参考:
1. selectImage.jsp页面代码:
```jsp
<%@ page language="java" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>Select Image</title>
</head>
<body>
<h3>Select an image:</h3>
<form method="post" action="<%=request.getRequestURI()%>">
<select name="image">
<option value="image1.jpg">Image 1</option> <!-- 可根据实际需求修改选项及对应值 -->
<option value="image2.jpg">Image 2</option>
<option value="image3.jpg">Image 3</option>
</select>
<input type="submit" name="submit" value="Submit"/>
</form>
<%
String selectedImage = request.getParameter("image");
if(selectedImage != null) {
%>
<p>You selected: <img src="<%=selectedImage%>" alt="Selected Image"/></p>
<%
}
%>
</body>
</html>
```
2. 实现思路:
首先我们在页面中提供一个下拉列表,其中每个选项对应一个图片文件名。当用户选择一个选项后,点击提交按钮,我们将用户选择的图片文件名提交到当前页面。然后我们读取提交的参数值,如果存在,则在页面上显示出该图片。这里我们使用了JSP内置对象request来获取参数值。如果参数值为null,则不做任何处理。
希望以上代码可以帮助到您。如果您还有其他问题,欢迎继续咨询。
请解释以下代码@SuppressLint("SetTextI18n") protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); ImageView img_result=(ImageView) findViewById(R.id.pic); switch (requestCode) { case TAKE_PHOTO: if (resultCode == RESULT_OK) { //将图片解析成Bitmap对象,并把它显现出来 // String filePath = getFilesDir().getAbsolutePath()+"/image.jpeg"; // bitmap = BitmapFactory.decodeFile(filePath); //注意bitmap,后面再decode就会为空 try { bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(imageUri)); } catch (FileNotFoundException e) { e.printStackTrace(); } // bitmap = BitmapFactory.decodeFile(picpath); picpath=imageUri.getPath().toString(); Log.e("", imageUri.getAuthority()); Log.e("picpath",picpath); @SuppressLint("SdCardPath") String fileName = picpath; img_result.setImageBitmap(bitmap); img_result.invalidate(); } break; case SCAN_OPEN_PHONE: if (resultCode == RESULT_OK){ Uri selectImage=data.getData(); String[] FilePathColumn={MediaStore.Images.Media.DATA}; Cursor cursor = getContentResolver().query(selectImage, FilePathColumn, null, null, null); cursor.moveToFirst(); //从数据视图中获取已选择图片的路径 int columnIndex = cursor.getColumnIndex(FilePathColumn[0]); picpath = cursor.getString(columnIndex); Log.e("picpath",picpath); cursor.close(); bitmap = BitmapFactory.decodeFile(picpath); img_result.setImageBitmap(bitmap); img_result.invalidate(); } break; default: break; } }
这段代码是一个 Android 应用程序中的 onActivityResult() 方法,用于处理从相机或相册中获取图片后的返回结果。其中,TAKE_PHOTO 和 SCAN_OPEN_PHONE 是两个请求码,用于区分不同的请求。如果请求成功,将获取到的图片解析成 Bitmap 对象,并将其显示在 ImageView 中。@SuppressLint("SetTextI18n") 是用于忽略 Android Studio 的警告信息的注解。
阅读全文