ajax文本框提示账号不为空,ajax文本框自动提示功能

这篇博客介绍如何在JSP中使用AjaxTag库来实现动态加载数据。通过设置property、type、name和id属性,以及配置AjaxServlet,实现了用户输入时动态从ExampleServlet获取部门编号(deptNo)对应的部门名称(deptName)列表,提高了用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

页面引入

prefix="ajax"%>

href="${ctx}/styles/ajaxtag/ajaxtags.css"

>

href="${ctx}/styles/ajaxtag/displaytag.css"

>

JSP代码

property="user.deptNo"/>

type="text" name="deptName" id="deptName"

value=""/>

target="user.deptNo" baseUrl="../../servlet/ExampleServlet?id=rms.ajaxtag.deptlist&keyName=deptName"

className="autocomplete"

indicator="indicator"

minimumCharacters="1" />

id="indicator" class="indicator" style="display:

none;">

WEB.XML

This is the description

of my J2EE

component

This is the display

name of my J2EE

component

ExampleServlet

common.ajax.AjaxServlet

ExampleServlet

/servlet/ExampleServlet

JAVA类

import net.sourceforge.ajaxtags.servlets.BaseAjaxServlet;

import net.sourceforge.ajaxtags.xml.AjaxXmlBuilder;

public class AjaxServlet extends BaseAjaxServlet {

private static final long serialVersionUID =

1L;

public AjaxServlet() {

super();

}

public void destroy() {

super.destroy(); // Just puts

"destroy" string in log

// Put your code here

}

public void doGet(HttpServletRequest request,

HttpServletResponse response)

throws

ServletException, IOException {

doPost(request,

response);

}

public void doPost(HttpServletRequest request,

HttpServletResponse response)

throws

ServletException, IOException {

}

public void init() throws ServletException

{

// Put your code here

}

@Override

public String getXmlContent(HttpServletRequest

request,

HttpServletResponse

arg1) throws ServletException, IOException {

AjaxXmlBuilder b = new

AjaxXmlBuilder();

HttpSession session =

request.getSession();

Map

String> paramMap = getParamMap(request);

String id =

paramMap.get("id");

String keyName =

paramMap.get("keyName");

List

dynaBeanList = new

ArrayList();

dynaBeanList =

(List)session.getAttribute(paramMap.get("sessionName"));

if(dynaBeanList == null ||

dynaBeanList.size() < 1){

JdbcDAO

dao = new JdbcDAO();

dynaBeanList

= dao.getListValue(null, "");

session.setAttribute(paramMap.get("sessionName"),

dynaBeanList);

}

DataSet

dataSet = new DataSet();

String word =

request.getParameter(keyName);

List

itemList = dataSet.getModelByWords(dynaBeanList,new

String[]{"key","value"}, word);

try {

b.addItems(itemList,

"key", "value",true);

} catch (Exception e1) {

e1.printStackTrace();

}

return b.toString();

}

public Map

String> getParamMap(HttpServletRequest request)

{

Map

String> paramMap = new

HashMap();

Enumeration paramNames =

request.getParameterNames();

StringBuilder sessionName = new

StringBuilder();

StringBuilder paramValueTmp =

new StringBuilder();

int paramCount = 0;

while (paramNames.hasMoreElements())

{ String paramName = (String)

paramNames.nextElement(); String[] paramValues =

request.getParameterValues(paramName); String paramValue =

paramValues[0]; paramMap.put(paramName, paramValue);

if (paramName.startsWith("param")) {

paramValueTmp.append(paramValue);

paramCount ++;

}

}

paramMap.put("paramCount", String.valueOf(paramCount));

paramMap.put("sessionName",

sessionName.append(paramMap.get("id")).append(paramValueTmp.toString()).toString());

return paramMap;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值