1、structs.xml
<!-- 查找单位信息 -->
<action name="searchOrgAction" class="sealBusinessAction" method="searchOrgAction">
<result type="json">
<param name="includeProperties">orgList\[\d+\]\.id,orgList\[\d+\]\.compName,orgList\[\d+\]\.compCode,orgList\[\d+\]\.registerCode,orgList\[\d+\]\.legalPersion
,orgList\[\d+\]\.logalPersionCard,orgList\[\d+\]\.compMail,orgList\[\d+\]\.TOrganizationType\.name,orgList\[\d+\]\.TOrganizationType\.id,orgList\[\d+\]\.TRegion\.name,orgList\[\d+\]\.TRegion\.id</param>
</result>
</action>
2、XX.action
private String jsonResultMsg = null;
public String getJsonResultMsg()
{
return jsonResultMsg;
}
public void setJsonResultMsg(String jsonResultMsg)
{
this.jsonResultMsg = jsonResultMsg;
}
// ajax查询单位信息
public String searchOrgAction()
{
String OrgName = getRequest().getParameter("OrgName");//名称
String hql = " from TOrganization t where t.compName like '%" + OrgName+ "%'";
this.orgList = this.sealbusinessService.GetbusinessList(hql);
return SUCCESS;
}
3、js调用ajax
/**
*单位搜索
*/
function searchOrg() {
var OrgName = $("#compName").val();
if (OrgName!=null && OrgName!="") {
$.ajax( {
type : "post",
url : "searchOrgAction.action",
dataType : "json",
data : {
"OrgName" : OrgName
},
async : false,
cache : false,
success : function(msg) {
var orgList = msg.orgList;
if (orgList.length > 0) {
$("#searchOrgDiv").css("display","block");
var spanHtml = "";
for ( var i = 0; i < orgList.length; i++) {
var organization = orgList[i];
spanHtml = spanHtml
+ "<span id=\"span"
+ i
+ "\" value=\""
+ organization.id
+ ";"
+ organization.compName
+ ";"
+ organization.compCode
+ ";"
+ organization.registerCode
+ ";"
+ organization.legalPersion
+ ";"
+ organization.logalPersionCard
+ ";"
+ organization.compMail
+ ";"
+ organization.TOrganizationType.name
+ ";"
+ organization.TOrganizationType.id
+ ";"
+ organization.TRegion.name
+ ";"
+ organization.TRegion.id
+ "\" style=\"width: 100%\" onmouseover=\"javascript:mouseOver(this);\" onmouseout=\"javascript:mouseOut(this);\" onclick=\"javascript:mouseClickToOrg(this);\">"
+ organization.compName + "</span>";
}
$("#searchOrgDiv").html(spanHtml);
var orgListLength = orgList.length;
if ((event.keyCode == 38 || event.keyCode == 40)
&& $("#searchOrgDiv").css("display") != "none") {
//上移
if (event.keyCode == 38) {
selectedOrgIndex = selectedOrgIndex - 1;
if (selectedOrgIndex < 0) {//如果选择值为 0 说明直接点击的上键,要选择到最后一条数据上
selectedOrgIndex = orgListLength;
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css(
"background-color", "#3399FF");
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css("color",
"#FFFFFF");
} else {
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css(
"background-color", "#3399FF");
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css("color",
"#FFFFFF");
}
}
//下移
if (event.keyCode == 40) {
selectedOrgIndex = selectedOrgIndex + 1;
if (selectedOrgIndex <= orgListLength) {
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css(
"background-color", "#3399FF");
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css("color",
"#FFFFFF");
} else {
selectedOrgIndex = 1;
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css(
"background-color", "#3399FF");
$(
"div span:nth-child("
+ selectedOrgIndex
+ ")").css("color",
"#FFFFFF");
}
}
} else {
selectedOrgIndex = 0;
}
} else {
$("#searchOrgDiv").css("display", "none");
$("#orgId").val("");
}
},
error : function() {
alert("服务器错误");
}
});
} else {
$("#searchOrgDiv").css("display", "none");
}
}