各位大侠:这是jsp在内存中生成图片的代码,但是生成的图片不是在原页面显示,而是在一张空白的页面显示的,求问怎么在我指定的同一页面的display区域显示呢?myeclipse中运行的
期待各位大侠的解答啊,谢谢了!<%@ page autoFlush="false" import="java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*" %><%
String ImageStr = request.getParameter("ID_Text");
if(ImageStr==null || ImageStr.equals(""))
{
response.setContentType("text/html; charset=gb2312");
%>
<HTML>
<HEAD>
<title>Http://www.lionsky.net</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<body>
<form id="Form1" method="post">
<input type="text" id="ID_Text" name=ID_Text onafterpaste="this.value=this.value.replace(/\D/g,'')" onkeyup="this.value=this.value.replace(/\D/g,'')">
<input type=submit value="GO">
<table width="332" align="center" border="2" bordercolor="#000000" cellspacing="0"
cellpadding="0" bordercolorlight="#000000" bordercolordark="#FFFFFF">
<tr>
<td id="rgb" align="center" height="100">display</td>
</tr>
</table>
</form>
</body>
</HTML> <%
}
else
{
out.clear();
response.setContentType("image/jpeg");
response.addHeader("pragma","NO-cache");
response.addHeader("Cache-Control","no-cache");
response.addDateHeader("Expries",0);
int width=300, height=100;
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();
//以下填充背景颜色
int b=Integer.parseInt(ImageStr);
g.setColor(new Color(b,0,0));
g.fillRect(0, 0, width, height);
String random="random";
g.dispose();
ServletOutputStream outStream = response.getOutputStream();
JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(outStream);
encoder.encode(image);
outStream.close();
}%>JSP内存图片
期待各位大侠的解答啊,谢谢了!<%@ page autoFlush="false" import="java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*" %><%
String ImageStr = request.getParameter("ID_Text");
if(ImageStr==null || ImageStr.equals(""))
{
response.setContentType("text/html; charset=gb2312");
%>
<HTML>
<HEAD>
<title>Http://www.lionsky.net</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<body>
<form id="Form1" method="post">
<input type="text" id="ID_Text" name=ID_Text onafterpaste="this.value=this.value.replace(/\D/g,'')" onkeyup="this.value=this.value.replace(/\D/g,'')">
<input type=submit value="GO">
<table width="332" align="center" border="2" bordercolor="#000000" cellspacing="0"
cellpadding="0" bordercolorlight="#000000" bordercolordark="#FFFFFF">
<tr>
<td id="rgb" align="center" height="100">display</td>
</tr>
</table>
</form>
</body>
</HTML> <%
}
else
{
out.clear();
response.setContentType("image/jpeg");
response.addHeader("pragma","NO-cache");
response.addHeader("Cache-Control","no-cache");
response.addDateHeader("Expries",0);
int width=300, height=100;
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();
//以下填充背景颜色
int b=Integer.parseInt(ImageStr);
g.setColor(new Color(b,0,0));
g.fillRect(0, 0, width, height);
String random="random";
g.dispose();
ServletOutputStream outStream = response.getOutputStream();
JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(outStream);
encoder.encode(image);
outStream.close();
}%>JSP内存图片
但是submit提交之后,总是在新的页面显示产生的图片,求解答,非常感谢啊
首先将你的submit改成button,当单击button时用ajax提交请求并返回生成的图片,然后将图片放到你需要显示的地方