Â¥Ö÷: keaide

»ùÓÚAJAXºÍJSF´òÔì·á¸»µÄÒòÌØÍø×é¼þ

[¸´ÖÆÁ´½Ó]
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
31#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:37 | Ö»¿´¸Ã×÷Õß
Ó¦ÓÃÆª

¡¾µ¼¶Á¡¿ÕâÊÇϵÁÐÎÄÕ»ùÓÚAJAXºÍJSF´òÔì·á¸»µÄ»¥ÁªÍø×é¼þ¡·µÄ×îºóһƪ¡£ÔÚ±¾ÆªÖУ¬ÎÒÃǽ«×ܽáºÍ°ü×°ÔÚǰÈýƪÖÐËùÒýÈëµÄ¸÷ÖÖ¼¼Êõ£¬²¢Éè¼ÆÒ»¸öÀàËÆÓÚGoogleµÄJDJ InputSuggest×é¼þ¡£

ÔÚ±¾ÆªÖУ¬ÎÒÃǽ«ÏòÄãչʾÔõÑùʹÓÃMabonÀ´´´½¨Ò»¸ö¼òµ¥¶øÇ¿ÓÐÁ¦µÄÊäÈë×é¼þ£¬Ëü¾ßÓÐÀàËÆÓÚGoogle SuggestËùÌṩµÄÄÚÖõĽ¨Ò鹦ÄÜ¡£ÎªÁËʹWeb¿ª·¢Õ߸üΪÈÝÒ×µØÊ¹ÓÃÎÒÃǵÄJDJ InputSuggest×é¼þ£¬ÎÒÃǽèÖúÓÚWeblets¿ªÔ´¹¤³ÌÀ´°ÑÍⲿ×ÊÔ´£¬ÀýÈçͼ±êºÍJavaScript¿â£¬°ó¶¨µ½Ò»¸öJavaµµ°¸Îļþ(JAR)ÖСªÓÉËüÀ´ÃèÊöÎÒÃǵÄJSF×é¼þ°ó¶¨¡£

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
32#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:37 | Ö»¿´¸Ã×÷Õß
Ò»¡¢´´½¨Ö§³ÖAJAXµÄJSF HtmlInputSuggest×é¼þ

Õâ¸öJSF AJAXÊäÈ뽨Òé·½°¸¹²°üÀ¨ËĸöÀ࣬¼ûͼ1¡£

±¾Ìû×ÓÖаüº¬¸ü¶à×ÊÔ´

ÄúÐèÒª µÇ¼ ²Å¿ÉÒÔÏÂÔØ»ò²é¿´£¬Ã»ÓÐÕʺţ¿×¢²á

x

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
33#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:37 | Ö»¿´¸Ã×÷Õß
ÕâЩÀà·Ö±ðÊÇ£º

•HtmlInputSuggest¡ªÆÁÄ»Éú³ÉÆ÷ÌØ¶¨µÄ×ÓÀà¡£

•HtmlRenderer¡ªÕâÊÇÒ»¸ö³¬À࣬ËüÌṩһЩ±ãÀûµÄ·½·¨À´ÊµÏÖ×ÊÔ´±àÂë¡£

•HtmlInputSuggestRenderer¡ªÊÇÄãµÄж¨ÖÆµÄÆÁÄ»Éú³ÉÆ÷£¬Ëü¸ºÔð°Ñ±ê×¢Éú³Éµ½¿Í»§¶ËÆÁÄ»ÉÏ£¬°üÀ¨ÐèÒªµÄ×ÊÔ´£¬ÀýÈçJavaScript¿âºÍʽÑù±íµÈ¡£

•HtmlInputSuggestTagÊDZêÇ©´¦ÀíÆ÷¡£

ÔÚÎÒÃǵÄÊäÈ뽨Òé½â¾ö·½°¸ÖУ¬ÎÒÃÇʵÏÖÁËÒ»¸öJavaScript¿â¡ªinputSuggest.js¡ªËü°üº¬ÀûÓÃMabon´ÓWeb¿ª·¢ÕßµÄÖ§³ÖbeanÖмìË÷Êý¾ÝµÄ¹¦ÄÜ¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃǽ«ÏêϸÌÖÂÛinputSuggest.jsÎļþºÍHtmlInputSuggestRenderer¡ªËüÃǶ¼ÊÜMabonµÄÓ°Ïì²¢ÇÒÌṩÁËÊäÈëÓò£¨ÕâЩÊäÈëÓò¶¼¾ßÓÐÊäÈë̽²â£¨type-ahead£©ºÍ½¨ÒéÁÐ±í¹¦ÄÜ£©¡£

¶þ¡¢ÊäÈ뽨ÒéJavaScript¿â

¼ÈÈ»ÎÒÃÇʹÓÃMabon£¬Òò´Ë²»ÐèÒªµ£ÐÄ´ÓÖ§³ÖbeanÖÐÈ¡»ØÊý¾ÝµÄÎÊÌâ¡£ÎÒÃÇ¿ÉÒÔ°ÑÕâÏîÈÎÎñ½»¸øMabonÀ´Íê³É¡£È»¶ø£¬ÎÒÃǹØÐĵÄÊÇ£¬ÈçºÎ´¦ÀíXMLHttpRequest¶ÔÏ󷵻صÄÊý¾Ý£¬ÈçºÎÌî³äʵ¼ÊµÄ½¨ÒéÁбíÒÔ¼°ÈçºÎ´¦ÀíÓû§½»»¥¡£Õâ¸öinputSuggest.js¿âÖаüº¬ÁË´óÁ¿µÄº¯Êý£¬ÓÃÀ´´¦Àí¼üÅ̵¼º½ºÍÊó±ê½»»¥¡£Æª·ùËùÏÞ£¬ÔÚ´ËÎÒÃǽ«¼¯ÖзÖÎö¶Ô¸ÃJSF HtmlInputSuggest×é¼þÓÐÖØ´óÓ°ÏìµÄº¯Êý¡£

(Ò»)doKeyPressº¯Êý

ÏÔʾÓÚÁбí1ÖеÄdoKeyPressº¯Êý¸ºÔð´¦Àí¼ü»÷ʼþ²¢¼ì²éÊÇ·ñÓû§°´ÏÂÁËTAB¼ü¡£ÔÚÕý³£Çé¿öÏ£¬Õâ¸öTAB¼ü½«ÒƳöÊäÈëÓò²¢¼¤·¢blurʼþ¡£¶ÔÓÚ±¾ÎÄÖеÄÊäÈ뽨Òé½â¾ö·½°¸À´Ëµ£¬Ò»´ÎTAB¼ü»÷Ò²¿ÉÒÔÓÃÓÚ´Ó½¨ÒéÁбíÖÐÑ¡ÔñÒ»¸ö»î¶¯ÐС£Îª´Ë£¬ÎÒÃÇÐèÒª¸ú×ÙTAB¼ü£¬´Ó½¨ÒéÁбíÖÐÑ¡ÔñÒ»ÐУ¬°ÑÖµÌí¼Óµ½ÊäÈëÓò£¬»òÕߣ¬Èç¹ûûÓÐÁбíÊý¾Ý¿ÉÓõϰ£¬À뿪¸ÃÊäÈëÓò¡£Èç¹û·¢Éú¿Ø¼þµ¼º½£¬ÄÇô½«¼¤»îdoBlur()º¯Êý²¢¹Ø±Õ½¨ÒéÁÐ±í¡£

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
34#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:38 | Ö»¿´¸Ã×÷Õß
Áбí1¡ªdoKeyPressº¯Êý

projsf.jdj.doKeyPress = function(event){var input = (event.srcElement || event.target);var inputId = input.id;var div = document.getElementById(inputId + "$suggest";var divStyle = (div.currentStyle || div.style);if (event.keyCode == 9 && divStyle.display == "block"{div.style.display = "none";var activeRow = projsf.jdj._findActiveRow(div);input.value = activeRow.innerHTML;return false; //È¡Ïû°´Tab¼üÀ뿪ÊäÈëÓò}return true; //¼ÌÐø£º°´Tab¼üÀ뿪ÊäÈëÓò£¬Ëü½«µ÷ÓÃdoBlur()}

Áбí2¡ªdoKeyUpº¯Êý

projsf.jdj.doKeyUp = function(event){var input = (event.srcElement || event.target);var inputId = input.id;var div = document.getElementById(inputId + "$suggest";if (event.keyCode == 9)//Tab¼ü{ return false; }else if ((div.style.display == "block" || div.childNodes.length > 0) &&(event.keyCode == 40 || event.keyCode == 38)){if (div.style.display == "none"{ div.style.display = "block"; }else {var activeRow = projsf.jdj._findActiveRow(div);switch (event.keyCode) {case 40: /ÏòϼýÍ·if (activeRow.nextSibling){activeRow.className = "HtmlInputSuggestRow";activeRow = activeRow.nextSibling;activeRow.className = "HtmlInputSuggestActiveRow";}break;case 38: /ÏòÉϼýÍ·if (activeRow.previousSibling){activeRow.className = "HtmlInputSuggestRow";activeRow = activeRow.previousSibling;activeRow.className = "HtmlInputSuggestActiveRow";}break;}input.value = activeRow.innerHTML;}return false;}if (event.keyCode != 8)//²»ÊÇÒ»¸öBackspace¼ü{input.blur();input.focus();}if (input.value.length <= 2)div.style.display = "none";}

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
35#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:38 | Ö»¿´¸Ã×÷Õß
Áбí3¡ªdoChangeº¯Êý

projsf.jdj.doChange = function(event£¬doSuggestURL){var input = (event.srcElement || event.target);var inputId = input.id;var context = { _inputId: inputId };net.java.dev.mabon.send({ url: doSuggestURL£¬args: [input.value]£¬callback: function(result) {projsf.jdj._callback.call(context£¬result);} });return true;}

Áбí4£º_callbackº¯Êý

projsf.jdj._callback = function(results){var inputId = this._inputId;var input = document.getElementById(inputId);var div = document.getElementById(inputId + "$suggest";if (results.length <= 1) {div.style.display = "none";return;}//´ÓÉÏÏÂÎÄÖеõ½ÊäÈëÓòIDvar input = document.getElementById(inputId);div.style.width = input.offsetWidth;while (div.firstChild) {div.removeChild(div.firstChild);}for (var i=0; i < results.length; i++) {var row = document.createElement("div";var span = document.createElement("span";var text = document.createTextNode(results);row.className = "HtmlInputSuggestRow";row.appendChild(text);row.onmouseover = new Function("event"£¬ "projsf.jdj._doMouseOver(event || window.event)";row.onclick = new Function("event"£¬ "projsf.jdj._doMouseClick(event || window.event)";div.appendChild(row);}div.firstChild.className = "HtmlInputSuggestActiveRow";div.style.display = "block";window.setTimeout("projsf.jdj._selectText('" + inputId + "'£¬ " + "'" + input.value + "'£¬ " + "'" + results[0] + "')"£¬ 200);}

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
36#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:38 | Ö»¿´¸Ã×÷Õß
Áбí5£º_selectTextº¯Êý

projsf.jdj._selectText=function(inputId£¬initialValue£¬suggestion){var input = document.getElementById(inputId);if (input.value != initialValue)return;if (input.value == suggestion) return;if (input.createTextRange)//IEÌØ¶¨µÄ{var selectionStart = input.value.length;input.value = suggestion;var range = input.createTextRange();range.moveStart("character"£¬ selectionStart);range.moveEnd("character"£¬ input.value.length);range.select();}else //DOM¼æÈݵÄ{var selectionStart = input.value.length;input.value = suggestion;input.selectionStart = selectionStart;input.selectionEnd = input.value.length;}}

Áбí6.HtmlInputSuggestRendererµÄencodeBegin()·½·¨

package com.apress.projsf.jdj.render.html;Import ...//£¨Ê¡ÂÔ£©/***HtmlInputSuggestRendererÓÃ×Ô¶¯½¨ÒéµÄÐÐΪÉú³ÉÒ»¸ö´«Í³µÄHtmlInputTextÓò*.*/public class HtmlInputSuggestRenderer extends HtmlRenderer{//...public static String TITLE_ATTR = "title";public static String DO_SUGGEST_ATTR = "doSuggest";public void encodeBegin(FacesContext context£¬UIComponent component) throws IOException{writeScriptResource(context£¬"weblet://org.dojotoolkit.browserio/dojo.js";writeScriptResource(context£¬ "weblet://net.java.dev.mabon/mabon.js";writeScriptResource(context£¬ "weblet://com.apress.projsf.jdj/inputSuggest.js";writeStyleResource(context£¬ "weblet://com.apress.projsf.jdj/inputSuggest.css";}

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
37#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:38 | Ö»¿´¸Ã×÷Õß
Áбí7.HtmlInputSuggestRendererµÄencodeEnd()·½·¨

public void encodeEnd(FacesContext context£¬UIComponent component) throws IOException{String valueString = _getValueAsString(context£¬ component);String clientId = component.getClientId(context);Map attrs = component.getAttributes();String title = (String)attrs.get(TITLE_ATTR);String onchange = (String)attrs.get(ONCHANGE_ATTR);MethodBinding doSuggest = (MethodBinding)attrs.get(DO_SUGGEST_ATTR);ResponseWriter out = context.getResponseWriter();out.startElement("div"£¬ component);if (title != null)out.writeAttribute("title"£¬ title£¬ TITLE_ATTR);// <input id="[clientId]" name="[clientId]"// value="[converted-value]" onchange="[onchange]" />out.startElement("input"£¬ component);out.writeAttribute("id"£¬ clientId£¬ null);out.writeAttribute("name"£¬ clientId£¬ null);if (valueString != null)out.writeAttribute("value"£¬ valueString£¬ null);if (doSuggest != null){//µ±Ê¹Ó÷þÎñÆ÷¶Ë½¨Òéʱ£¬½ûÖ¹ä¯ÀÀÆ÷×Ô¶¯Íê³É¹¦ÄÜout.writeAttribute("autocomplete"£¬ "off"£¬ null);String expression = doSuggest.getExpressionString();//´Ó±í´ïʽÖÐÐÞÕû#{}String bindingRef = expression.substring(2£¬ expression.length() - 1);ViewHandler handler = context.getApplication().getViewHandler();String doSuggestURL = handler.getResourceURL(context£¬ "mabon:/" + bindingRef);out.writeAttribute("onkeypress"£¬ "return projsf.jdj.doKeyPress(event);"£¬ null);out.writeAttribute("onkeyup"£¬ "return projsf.jdj.doKeyUp(event);"£¬ null);out.writeAttribute("onchange"£¬ "projsf.jdj.doChange(event£¬ '" + doSuggestURL + "');"£¬ null);out.writeAttribute("onblur"£¬ "return projsf.jdj.doBlur(event);"£¬ null);}out.endElement("input";out.startElement("br"£¬ null);out.endElement("br";out.startElement("div"£¬ null);out.writeAttribute("id"£¬ clientId + "$suggest"£¬ null);out.writeAttribute("class"£¬ "HtmlInputSuggest"£¬ null);out.endElement("div";}

Áбí8.Ò»¸öʹÓÃJSF HttpInputSuggest×é¼þµÄJSPÒ³Ãæ

<?xml version="1.0" encoding="UTF-8" ?><jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="1.2"xmlns:jdj="http://projsf.apress.com/jdj" xmlns:f="http://java.sun.com/jsf/core"xmlns:h="http://java.sun.com/jsf/html" ><jsp:directive.page contentType="text/html" /><f:view><html><head><title>ProJSF : HtmlInputSuggest</title></head><body><h:form id="form" ><jdj:inputSuggest id="inputSuggest" title="Input Suggest Component" value="#{backingBean.value}"doSuggest="#{backingBean.doSuggest}" /></h:form></body></html></f:view></jsp:root>

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
38#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:39 | Ö»¿´¸Ã×÷Õß
Áбí9:Ö§³ÖbeanµÄvalueÊôÐÔ

package com.apress.projsf.jdj.application;import java.util.ArrayList;import java.util.List;/***BackingBeanÊÇÒ»¸öinputSuggest.jspxÎĵµµÄÖ§³Öbean¡£*/public class BackingBean{public void setValue(Object value) { _value = value; }public Object getValue() { return _value; }

Áбí10.Ö§³ÖbeanµÄdoSuggest()·½·¨

public String[] doSuggest(String initialValue) {List<String> suggestions = new ArrayList<String>();for (int i=0; i < _MASTER_LIST.length; i++) {if (_MASTER_LIST.startsWith(initialValue))suggestions.add(_MASTER_LIST);}return suggestions.toArray(new String[0]);}private Object _value;static private final String[] _MASTER_LIST = new String[]{"Pro JSF and Ajax"£¬"Pro Ajax"£¬"Pro JSP 2"£¬"Pro Jakarta"£¬"Pro J2EE 1.4"};}

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
39#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:39 | Ö»¿´¸Ã×÷Õß
(¶þ)doKeyUpº¯Êý

ÔÚÈκΰ´¼üµÄÇé¿öÏ£¬¶¼µ÷ÓÃÕâ¸öº¯Êý£¬²¢ÇÒ¸ù¾Ý¾ßÌåµÄ°´¼üÖ´ÐÐijЩ¶¯×÷¡£¾¡¹ÜTAB¼üÓÉdoKeyPressº¯ÊýÀ´¹ÜÀí£¬µ«ÎÒÃÇ»¹±ØÐëÈ·±£²¶»ñËü²¢ÖÕÖ¹ÕâÒ»¹ý³Ì¡£

Óйؼü»÷µÄÁíÒ»¸öÎÊÌâÊÇUPºÍDOWN¼ýÍ·¼ü¡£Í¨³£Çé¿öÏ£¬ÕâЩ¼ü½«ÒýÆð¹â±êÔÚ×ó±ßºÍÓұߵÄÊäÈëÓòÖ®¼äµÄÑ¡ÔñЧ¹û¡£ÔÚÕâ¸öÊäÈ뽨Òé×é¼þÖУ¬Óû§¿ÉÒÔʹÓÃÕâЩ¼üÀ´ÊµÏÖ½¨ÒéÁбíÖÐÉÏÏÂÑ¡ÏîÖ®¼äµÄµ¼º½¡£

ÔÚ±¾ÎÄÖУ¬doKeyUpº¯Êý×îÖØÒªµÄ²¿·ÖÊDz¶»ñËùÓеÄÒÔÊäÈëµ½ÊäÈ뽨ÒéÓòÖеÄÒ»¸öÐÂ×Ö·û½áÊøµÄÄÇЩ»÷¼ü£¬¶ø²»ÊÇÒ»¸öBackspace¼ü£¨¼ûÁбí2£©¡£ÔÚÕâÖÖÇé¿öÖУ¬doKeyUpº¯Êý½«µ÷ÓÃblur()º¯Êý¡ªËü¼ÆËãÓû§ÊäÈëµÄÖµ²¢ÇÒÔÚ·¢Éú±ä»¯µÄÇé¿öϼ¤·¢Ò»¸öchangeʼþ¡£ÎÒÃÇ»¹±ØÐëÖØÖõ½ÊäÈ뽨ÒéÓò£¨input.focus()£©µÄ½¹µãÒÔ±ãÓû§ÄܼÌÐøÊäÈë¸ü¶àÎı¾¡£

Èç¹ûÒ»¸öÓû§ÊäÈëÁËÒ»¸öÐÂÖµ£¬doChange()º¯Êý½«±»¼¤»î£¨¼ûÁбí3£©¡£doChange()º¯Êý¸ºÔðµ÷ÓÃmabon.send()º¯Êý£¬´«µÝÒ»¸ö°üº¬ÓйØÓû§ÊäÈëÖµÐÅÏ¢µÄMap£¬Òªµ÷ÓõÄJSFÍйÜbeanÒÔ¼°¸Ã·½°¸ÏàÓ¦µÄ»Øµ÷º¯Êý_callback()¡£

_callbackº¯Êý£¨ÓÉÁбí4Ëùʾ£©£¬¸ºÔð´¦Àí´ÓÏìÓ¦¶ÔÏ󷵻صĽá¹û²¢ÇÒ¾ÝÓû§ÊäÈëµÄÖµ´´½¨Ò»¸ö½¨ÒéÁÐ±í¡£ÓÉÓÚÎÒÃÇÒì²½µØÓë·þÎñÆ÷½øÐÐͨѶ£¬ËùÒÔÎÒÃǾÍÓÐÒ»¸ö»ú»á¡ªÔÚÏìÓ¦·µ»ØÖ®Ç°¡ªÈÃÓû§ÊäÈëÒ»¸öÐÂÖµ¡£ÎªÈ·±£ÎÒÃÇÄܹ»´¦ÀíÕâÖÖÇé¿ö£¬ÎÒÃÇÒýÈëÁËÒ»¸ö¼ÆÊ±Æ÷£¬Ëü¸ºÔðÑÓ³ÙÊäÈë̽²â£¨type-ahead£©ÌØÕ÷£¬Ö±µ½¾­¹ýÒ»¶ÎÌØ¶¨Ê±¼äΪֹ¡£

Èç¹ûÖµ±ä»¯ÁË£¨¼ÈÈ»ÒѾ­·¢³öÇëÇó»òÕ߸ÃÖµÓ뽨ÒéµÄÖµÏàͬ£©£¬ÄÇôÎÒÃÇʲôҲ²»±Ø×ö£¨¼ûÁбí5£©¡£Èç¹û¸ÃÖµÓë³õʼÊäÈëÖµÏàͬ£¬ÄÇôÎÒÃÇÒª°ÑÁбíÖн¨ÒéµÄµÚÒ»¸öÖµÌí¼Óµ½ÊäÈëÓò²¢ÇÒ¸ßÁÁÌí¼Óµ½Óû§ÊäÈëµÄÖµ²¿·Ö¡£

(Èý)HtmlInputSuggestRenderer

ÏÖÔÚ£¬ÎÒÃÇÀ´·ÖÎöÒ»ÏÂÈçºÎÀûÓÃinputSuggest.js¿âËùÌṩµÄ¿Í»§¶Ë¹¦Äܲ¢ÇÒ°ÑËü·â×°µ½Ò»¸öµ¥Ò»µÄJSF×é¼þÖС£ÔÚÕâ¸öʾÀýÖУ¬Ö÷Òª²¿·ÖÊÇJSFÆÁÄ»Éú³ÉÆ÷¡ªHtmlInputSuggestRenderer¡£Õâ¸öÉú³ÉÆ÷¸ºÔðÈ·±£ÕýÈ·µÄ±ê×¢±»Ð´Ïò¿Í»§¶Ë£¨°üÀ¨ÈκäËü×ÊÔ´ÀýÈçJavaScript¿â£¬CSS£¬Í¼±êµÈµÄÒýÓã©¡£ÕýÈçÎÒÃÇÔÚÇ°ÃæÎÄÕÂÖÐËùÌÖÂ۵ģ¬Äã¿ÉÒÔʹÓÃWebletsÀ´°ÑÕâЩ×ÊÔ´´ò°üµ½ÓëÄãµÄJSF×é¼þͬһ¸ö¿âÖС£

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´
ÂÛ̳»ÕÕÂ:
456
ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2011-12-28 15:24:18ÂíÉÏÓжÔÏó
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓÐÇ®
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓз¿
ÈÕÆÚ:2014-02-19 11:55:14ÂíÉÏÓгµ
ÈÕÆÚ:2014-02-19 11:55:14ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2014-02-19 10:05:27ÓÅÐãдÊÖ
ÈÕÆÚ:2013-12-18 09:29:09ITPUBÉçÇøÇ§ÀïÂí»ÕÕÂ
ÈÕÆÚ:2013-06-09 10:15:34ITPUBÄê¶È×î¼Ñ°æÖ÷
ÈÕÆÚ:2013-01-30 17:30:25°æÖ÷9¶Î
ÈÕÆÚ:2012-07-03 02:21:03
40#
 Â¥Ö÷| ·¢±íÓÚ 2006-8-1 21:39 | Ö»¿´¸Ã×÷Õß
(ËÄ)ʹÓÃWeblets

¿ªÔ´Weblets¹¤³Ì(http://weblets.dev.java.net)µÄÄ¿µÄ¾ÍÊÇÒÔÒ»ÖÖͨÓõĿÉÀ©Õ¹µÄ·½Ê½À´½â¾ö×ÊÔ´´ò°üÎÊÌ⣬ÒÔ±ãËùÓеÄJSF×é¼þ´´×÷Õß¶¼¿ÉÒÔÀûÓÃËü£¬²¢ÇÒËü²»»á¸øWeb¿ª·¢Õß´øÀ´¶îÍâµÄ°²×°¸ºµ£¡£

×ÜÌåÀ´Ëµ£¬Ò»¸öWeblet³äµ±Ò»¸ö¡°µ÷Í£ÈË¡°µÄ×÷ÓáªËüÀ¹½Ø¿Í»§¶ËµÄÇëÇó²¢ÇÒʹÓüò¶ÌµÄURLÀ´´ÓÒ»¸öJARÎļþÖÐÌṩ×ÊÔ´·þÎñ¡£²»ÏóʹÓÃservlet»ò¹ýÂËÆ÷£¨Filter£©·½·¨£¬Ò»¸öWeblet¿ÉÒÔÔÚÒ»¸öJARÎļþÄÚ½øÐÐ×¢²áºÍÅäÖá£ÕâÑùÒÔÀ´£¬×é¼þ¿âÉú³ÉÆ÷¡¢ËüÃǵÄ×ÊÔ´ÎļþºÍWebletÅäÖÃÎļþ(weblets-config.xml)¶¼¿ÉÒÔ±»´ò°üµ½Í¬Ò»¸öJARÎļþÖУ»¶øÇÒ£¬µ±×é¼þ¿â±»Éý¼¶µ½Ð°汾ʱ£¬Äã²»ÐèÒªµ¥¶ÀµØ·¢²¼ÆäËü°²×°ÄÚÈÝ£»¶øÇÒ¶ÔÓÚWeb¿ª·¢ÕßÀ´Ëµ£¬²»ÐèÒªÅäÖò½Öè¡£

ÖµµÃ×¢ÒâµÄÊÇ£¬ËùÓеÄWebletsÌṩµÄ×ÊÔ´¶¼ÊÇÄÚ²¿×ÊÔ´£¬½öΪÆÁÄ»Éú³ÉÆ÷ËùʹÓã»¶øÈκÎÓ¦ÓóÌÐòÌṩµÄ×ÊÔ´£¨ÀýÈçͼÏ󣩣¬¶¼ÓÃ×÷×é¼þÊôÐÔÖµ²¢ÇÒ´Ó¸ùÉÏÏÂÎÄÖÐ×÷ΪÍⲿ×ÊÔ´¼ÓÔØ¡£

(Îå)HtmlInputSuggestRendererÀà

Õâ¸öHtmlInputSuggestRendererÀàÖеÄÁ½¸ö×îÖØÒªµÄ·½·¨ÊÇencodeBegin()ºÍencodeEnd()·½·¨¡£encodeBegin()·½·¨£¨ÏÔʾÓÚÁбí6ÖУ©¸ºÔðдÕâ¸ö×é¼þÐèÒªµÄ×ÊÔ´¡£writeScriptResource()·½·¨ºÍwriteStyleResource()·½·¨ÊÇHtmlRendererËùÌṩµÄ±ãÀû·½·¨²¢ÊµÏÖÁË¡°½öдһ´Î¡±µÄ¹¦ÄÜ£¬´Ó¶ø×èÖ¹¶à´Îдͬһ¸ö¿âµÄÇé¿ö·¢Éú¡ªÍòÒ»Web¿ª·¢Õ߰Ѷà¸öÊäÈ뽨Òé×é¼þÌí¼Óµ½Ò³ÃæÖС£

(Áù)ʹÓÃMabon

MabonÊÇÒ»ÏԴµÄ¹¤³Ì£¨http://mabon.dev.java.net£©¡£ËüÌ ... йÜbeanÖнÓÊÕÊý¾Ý¡£

ʹÓõÀ¾ß ¾Ù±¨

»Ø¸´

ÄúÐèÒªµÇ¼ºó²Å¿ÉÒÔ»ØÌû µÇ¼ | ×¢²á

±¾°æ»ý·Ö¹æÔò ·¢±í»Ø¸´

TOP¼¼Êõ»ý·Ö°ñ ÉçÇø»ý·Ö°ñ »ÕÕ ÍÅ¶Ó Í³¼Æ ֪ʶË÷ÒýÊ÷ »ý·Ö¾ºÅÄ Îı¾Ä£Ê½ °ïÖú
  ITPUBÊ×Ò³ | ITPUBÂÛ̳ | Êý¾Ý¿â¼¼Êõ | ÆóÒµÐÅÏ¢»¯ | ¿ª·¢¼¼Êõ | ΢Èí¼¼Êõ | Èí¼þ¹¤³ÌÓëÏîÄ¿¹ÜÀí | IBM¼¼ÊõÔ°µØ | ÐÐÒµ×ÝÏòÌÖÂÛ | ITÕÐÆ¸ | ITÎĵµ
  ChinaUnix | ChinaUnix²©¿Í | ChinaUnixÂÛ̳
CopyRight 1999-2011 itpub.net All Right Reserved. ±±¾©Ê¢ÍØÓÅѶÐÅÏ¢¼¼ÊõÓÐÏÞ¹«Ë¾°æÈ¨ËùÓС¡ÁªÏµÎÒÃÇ Î´³ÉÄêÈ˾ٱ¨×¨Çø¡¡
¾©ICP±¸16024965ºÅ-8 ¡¡±±¾©Êй«°²¾Öº£µí·Ö¾ÖÍø¼àÖÐÐı¸°¸±àºÅ£º11010802021510¡¡¹ã²¥µçÊÓ½ÚÄ¿ÖÆ×÷¾­ÓªÐí¿ÉÖ¤£º±àºÅ£¨¾©£©×ÖµÚ1149ºÅ
  
¿ìËٻظ´ ·µ»Ø¶¥²¿ ·µ»ØÁбí