`
wj196
  • 浏览: 294226 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

jquery自动完成功能,(边输入边查询)

    博客分类:
  • java
 
阅读更多
引入js
<script type="text/javascript" src="/js/jquery/ui/jquery.ui.autocomplete.js"></script>


jsp代码
	<span>厂商:</span>
	  <label>
 <input id="manufacture_temp" name="manufacture_temp"  type="text"  <c:if test="${article.manufacture!=null}"> value="${article.manufacture}"</c:if> class="inp_h" size="40" maxlength="50" />
 <input id="manufactureId" name="manufactureId"  type="hidden" value="${article.manufactureId}"  />
 <input id="manufacture" name="manufacture"  type="hidden" value="${article.manufacture}"  />
  <tt class="tt_error">*</tt>
 <tt id="manufacture_empty_error" class="tt_error dn">不能为空</tt>
 <tt id="manufacture_error" class="tt_error dn">厂商不存在</tt>     </label>


js代码:

/****
 * 厂商自动完成功能
 */


$(function() {
	
	$( "#manufacture_temp" ).autocomplete({			
		source: function( request, response ) {
		if(trim(request.term)!=""){
			$.ajax({
				url: "/client/manufactureList.json",
				dataType: "json",
				data: {
					featureClass: "P",
					style: "full",
					maxRows: 12,
					name_startsWith: request.term
				},
				success: function( data ) {
					response( $.map( data.factoryList, function( item ) {
						return {
							label:  item.factoryName,
							value: item.factoryName,
							id:	item.factoryId
						}
					}));
				}
			});
		
		}	
		},
		minLength: 1,
		select: function( event, ui ) {
			document.getElementById("manufactureId").value=ui.item.id ;
			document.getElementById("manufacture").value=ui.item.value ;
			document.getElementById("manufacture_temp").disabled="disabled";
         
		},
		open: function() {
			$( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
		},
		close: function() {
			$( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
		}
	});
});



后台查询代码:


	/**
	 *模糊查询厂商
	 * 
	 * @param req
	 * @param resp
	 * @param modelMap
	 * @return
	 */
	@RequestMapping("/client/manufactureList.json")
	public ModelAndView manufactureList(HttpServletRequest req,
			HttpServletResponse resp,  ModelMap modelMap) {

		
		String param = req.getParameter("name_startsWith");
		try {
			
			param=	new String(param.getBytes("ISO-8859-1"), "UTF-8").trim();
			
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		List<ClientContractPrf>  factoryList= this.clientContractPrfService.queryFactoryList(param);

		modelMap.put("factoryList", factoryList);
		modelMap.put("totalResultsCount", factoryList.size());
		
		return new ModelAndView(jsonView);

	}
}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics