Voilà le fameux textbox[type="autosuggest"] fonctionnant en remote.
syntaxe : fichier XUL
<?xml-stylesheet href="xbl/textfield/textfield.css" type="text/css"?>
minimum avec un rdf repondant au standard detaillé plus bas:
<textbox type="autosuggest" autosuggestsearch="jsp/suggestion.jsp"/>
avec toutes les option personnalisable :
<textbox type="autosuggest" autosuggestsearch="jsp/suggestion.jsp" autosuggestparam="start" autosuggestlimit="limit" limit="1000"
minlength="0"
maxrows="20"
ref="urn:suggest:values"
label="rdf:urn:suggest:rdf#label"
properties="rdf:urn:suggest:rdf#prop"
issuggest="rdf:urn:suggest:rdf#issuggest"/>
details :
autosuggestsearch : url du RDF
autosuggestparam : nom du paramettre de recherche (defaut "start")
autosuggestlimit : nom du paramettre de limite de resultat (defaut "limit")
limit : valeur du paramettre de limite de resultat (defaut 1000)
minlength : nombre de caracteres minimum avant de faire une recherche (default 1)
maxrows : nombre maximum de ligne dans la popup (defaut 20)
ref : attribut "ref" associé au "rdf"
label : resource RDF qui s'affichera sur chaque ligne
properties : resource RDF qui permet de remplir l'attribut "properties" de chaque treecell. Et ainsi mettre des icones par exemple
issuggest : resource RDF qui dira si la ligne est une suggestion ou pas. si "false", la ligne ne sera pas selectionnable. Utile dans le cas d'une liste de suggestion arborescente, et dont certain noeuds container ne seraient pas selectionnable.
FORMAT DU RDF
xmlns:KEY="urn:suggest:rdf#" : l'espace de nom de vos données
KEY:label="à" : c'est ce qui s'affichera dans chaque treecell
KEY:prop="" : facultatif, properties des treecell
KEY:issuggest="" : facultatif, rends inactif au click ou ENTER sur la ligne
<?xml version="1.0" encoding="UTF-8"?>
<RDF:RDF xmlns:RDF="
http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:NC="
http://home.netscape.com/NC-rdf#" xmlns:KEY="urn:suggest:rdf#">
<RDF:Seq RDF:about="urn:suggest:values">
<RDF:li><RDF:Description KEY:label="à" KEY:prop="" KEY:issuggest="" /></RDF:li>
<RDF:li><RDF:Description KEY:label="a" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="aï" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="av" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="as" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="ah" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="al" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="au" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="an" KEY:prop="" KEY:issuggest=""/></RDF:li>
<RDF:li><RDF:Description KEY:label="ai" KEY:prop="" KEY:issuggest=""/></RDF:li>
</RDF:Seq>
<RDF:Seq RDF:about="urn:suggest:nb">
<RDF:li><RDF:Description RDF:number="10"/></RDF:li>
</RDF:Seq>
</RDF:RDF>
IMPORTANT
la Sequence finale qui informe le composant du nombre de ligne retourné. à tjs renseigner
<RDF:Seq RDF:about="urn:suggest:nb">
<RDF:li><RDF:Description RDF:number="10"/></RDF:li>
</RDF:Seq>
textfield.zip
à dezipper dans un repertoire 'xbl', à la racine de votre site
Le contenu de cette page est disponible selon certaines conditions de réutilisation. Lire aussi la page des informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.