datepickertag.java

来自「《j2ee开发全程实录》随书源码」· Java 代码 · 共 55 行

JAVA
55
字号
package com.cownew.PIS.framework.web.ctrl;

import java.io.IOException;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;

import com.cownew.PIS.framework.web.helper.WebUtils;

public class DatePickerTag extends TagSupport
{
	private String forComponent;

	public void setForComponent(String forComponent)
	{
		this.forComponent = forComponent;
	}
	
	public int doEndTag() throws JspException
	{
		StringBuffer sb = new StringBuffer();
		sb.append("<IMG style='CURSOR: hand' onclick=\"")
				.append(getOnClick()).append("\"");

		String picURL = WebUtils.getAbsoluteURL(pageContext,
				"/images/datepicker.gif");
		sb.append(" src='").append(picURL).append("' align=top border=0/>\n");

		try
		{
			pageContext.getOut().println(sb.toString());
		} catch (IOException e)
		{
			throw new JspException(e);
		}
		return EVAL_PAGE;
	}
	
	private String getOnClick()
	{
		StringBuffer sbPickerURL = new StringBuffer();
		sbPickerURL.append("/Ctrl/DateSelectDialog.htm");
		
		String pickerURL = WebUtils.getAbsoluteURL(pageContext,sbPickerURL.toString());
		
		StringBuffer sb = new StringBuffer();
		sb.append("javascript:if(!event.ctrlKey){result=window.showModalDialog('");
		sb.append(pickerURL).append("','','dialogHeight:300px;dialogWidth:250px;scroll:yes;');");
		sb.append(forComponent).append(".value=result;}else{");
		sb.append(forComponent).append(".value='';");
		sb.append("}");
		return sb.toString();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?