Envoyé par : Tangui
Date : 08/07/2009 10:11
Bonjour,
je veux étendre un <select name="country"/> grâce à XBL (je commence sur ce langage). Ma question est la suivante : est-il possible d'une manière ou d'une autre que mon XBL renvoie la valeur du pays et que cette valeur soit envoyée normalement lors de la soumission du formulaire ? Sachant que <select/> n'a pas d'atribut value.
D'avance merci,
Tangui
Envoyé par : laurentj
Date : 08/07/2009 14:43
Salut,
bah il suffit de sélectionner la bonne valeur dans le select (avec setSelectedIndex ou en mettant l'attribut selected sur l'option correspondante).
Envoyé par : Tangui
Date : 23/07/2009 17:08
En fait je cherche à transformer un select en carte SVG.
Le problème que je rencontre c'est qu'il ne semble pas possible de transformer l'apparence du <select/> une fois le binding lié à lui (je voudrais afficher un bloc à la place d'une liste déroulante).
Voici le code :
xbl.xhtml
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/css" href="xbl.css"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <title>Test XBL</title> </head> <body> <h1>XBL</h1> <p> <select class="country"> <option>a</option> <option>b</option> <option>c</option> <option>d</option> <option>e</option> <option>f</option> <option>g</option> <option>h</option> <option>i</option> <option>j</option> <option>k</option> <option>l</option> <option>m</option> <option>n</option> <option>o</option> <option>p</option> <option>q</option> <option>r</option> <option>s</option> </select> </p> </body> </html>
xbl.css
select.country{ -moz-binding:url(xbl.xml#binding1); display:block !important; -moz-appearance:none !important; }
xbl.xml
<?xml version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <binding id="binding1"> <resources> <stylesheet> <![CDATA[ @namespace url(http://www.w3.org/1999/xhtml); @namespace svg url(http://www.w3.org/2000/svg); ]]> </stylesheet> </resources> <content> <children/> <svg width="100%" height="100%" viewBox="0 0 400 300" preserveAspectRatio="xMidYMid" xml:lang="fr" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title>Test</title> <rect x="100" y="100" width="100" height="100" fill="yellowgreen"/> </svg> </content> </binding> </bindings>
Envoyé par : laurentj
Date : 24/07/2009 15:25
bon déja, la balise stylesheet ne permet que d'indiquer l'url d'une feuille css, pas d'y inclure du style directement
Ensuite, le résultat de ton xbl ici, ça va être
<select class="country"> <option>a</option> <option>b</option> <option>c</option> <option>d</option> <option>e</option> <option>f</option> <option>g</option> <option>h</option> <option>i</option> <option>j</option> <option>k</option> <option>l</option> <option>m</option> <option>n</option> <option>o</option> <option>p</option> <option>q</option> <option>r</option> <option>s</option> <svg width="100%" height="100%" viewBox="0 0 400 300" preserveAspectRatio="xMidYMid" xml:lang="fr" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title>Test</title> <rect x="100" y="100" width="100" height="100" fill="yellowgreen"/> </svg> </select>
Donc, effectivement, ça ne va pas te donner grand chose. Il faudrait au moins faire un binding pour la balise option, en plus de celui du select..
Cependant, peut être vaudrait-il mieux que ton binding genère lui même "à la main" (avec du javascript) son contenu..
à voir.
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - 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.