aui-autocomplete [ 二 ] 验证未通过保留输入值

<%
long myUserId = ParamUtil.getLong(request, "myUserId",themeDisplay.getUserId());
String myUserName = ParamUtil.getString(request, "myUserName", themeDisplay.getFullName());

PortletRequest portletRequest = (PortletRequest)request.getAttribute(JavaConstants.JAVAX_PORTLET_REQUEST);
if(!SessionErrors.isEmpty(portletRequest)){
	myUserId = ParamUtil.getLong(request, "myUserId");
	myUserName = ParamUtil.getString(request, "myUserName");
}
%>

<aui:script>
AUI().ready('aui-autocomplete', function(A) {
	var states = <%= XXXXUtil.getXXXXXXX() %>;
	
	var autoComplete = new A.AutoComplete(
		{
			contentBox: '#demo',
			dataSource: states,
			matchKey: 'name',
			typeAhead: true,
			autoHighlight: true,
			forceSelection:true,
			queryMatchCase:false,
			queryMatchContains:true,
			
			schema: {
				resultFields: ['key', 'name', 'email']
			},
			on: {
						'itemSelect': function(event) {
                            var key = this._elCurListItem._resultData.key;
							var name = this._elCurListItem._resultData.name;

							this.inputNode._node.value = name;
							$( "#<portlet:namespace />myUserId" ).val(key);
							$( "#<portlet:namespace />myUserName" ).val(name);
                        },
                        
                        'selectionEnforce': function(event) {
							this.inputNode._node.value = '';
							$( "#<portlet:namespace />myUserId" ).val('');
							$( "#<portlet:namespace />myUserName" ).val('');
						}
                }
		}
	);
	
	//override the list format 
	autoComplete.formatResult =  function(result, request, resultMatch) {
		return (resultMatch  +  '<br>'+ result.email+ '<br>&nbsp;&nbsp;') || '' ;
	};
	
	autoComplete.render();
	
	autoComplete.inputNode._node.value = '<%=myUserName %>';
	$( "#<portlet:namespace />myUserId" ).val('<%=myUserId %>');
	$( "#<portlet:namespace />myUserName" ).val('<%=myUserName %>');
							
});
</aui:script>


<div id="demo"></div>
<input type="hidden" id="<portlet:namespace />myUserId", name="<portlet:namespace />myUserId" value="<%= myUserId %>" />
<input type="hidden" id="<portlet:namespace />myUserName", name="<portlet:namespace />myUserName"  value="<%= myUserName %>"/>

猜你喜欢

转载自likaidalian.iteye.com/blog/1766584
今日推荐