2008 20 septembre 2008

Réduire problème TEXTAREA dans XSL / XSLT


EXPOSÉ DES PROBLÈMES:
J'ai rencontré ce problème, un sujet textareas dans XSLs. En termes simples, le problème se pose lorsque vous avez une étiquette vierge <textarea>, alors il sera le réduire à <textarea />.
c'est à dire si vous aviez quelque chose comme ce qui suit dans votre XSL et les données XML pour la valeur TEXTAREA, ne renvoie rien ...

<textarea name='description'> <xsl:value-of select="DESCRIPTION"/> </ textarea>

Comme les navigateurs ne reconnaissent pas cela, il fera le reste du formulaire HTML afin de fonctionner dans la zone de texte.

SOLUTIONS POSSIBLES:

Dans le XSL, ajouter un non-rupture-space () après la xsl: tag.BEWARE valeur, de prendre soin de cet espace supplémentaire que vous avez ajouté, au cours des validations côté client de ce domaine.

<textarea name='description'> <xsl:value-of select="DESCRIPTION"/> </ textarea>

Ou
<xsl:value-of select="concat (DESCRIPTION,'')"/>

Ou
Insérez un <xsl:value-of select="@unknown" tag /> pointant vers un attribut inconnu. Cela va forcer l'analyseur PHP XSLT pour générer une balise d'ouverture et de clôture zone de texte, même si elle n'a rien à voir entre les deux.

Ou
Insérer un champ contenant un espace <xsl:text> pour forcer une balise de fermeture.

Toutefois, si les solutions mentionnées ci-dessus peut sembler pour résoudre le problème, je ne suis toujours pas convaincu qu'ils ont raison et les meilleures façons de le résoudre. Si il ya une autre façon de mieux de fixer cette bizarrerie, S'il vous plaît nous le faire savoir.


2008 14 septembre 2008

Une variété de conditions de test XSL (Collection de xsl: if et XSL: Conditions d'essai lorsque)

Chaque fois que je dois faire un xsl: if ou xsl: when test, je n'ai revenir à des ouvrages de référence. Je ne semble jamais s'en souvenir. Pensais qu'il y aurait plus là-bas, tout comme moi, qui préféreraient avoir chacun d'eux, possible, à un endroit, prêt à être renvoyé en cas de besoin.

Pour ceux qui sont nouveaux ... Syntaxe pour xsl: if

<xsl:if test="expression">
<- Contenu: modèle ->
</ Xsl: if>

Le xsl: if / xsl: when test Collection
Les conditions ci-dessous sont toutes simples et explicites. Donc, je crois qu'il n'aura pas besoin de beaucoup d'explication

<xsl:if test="position()=last()-1">
Cette si le dernier élément, mais un dans la liste!
</ Xsl: if>

<xsl:if test="SALARY> 5000 ">
Le salaire de cette personne est supérieure à Rs. 5000
</ Xsl: if>

<xsl:if test="count(JOBS)> 3 ">
Il ya plus de 3 emplois dans cette liste!
</ Xsl: if>

<xsl:if test="(@DEPT ='SALES') ou (@JOINYEAR = '1997')">
Cette personne est du département des ventes ou son année d'adhésion est 1997
</ Xsl: if>

<xsl:if test="EXPERIENCE">
Cette personne at-atleast un élément enfant EXPÉRIENCE.
</ Xsl: if>

<xsl:if test="@HOBBY">
La personne possède un attribut passe-temps.
</ Xsl: if>

Les conditions mêmes de texte pourrait être utilisé pour xsl: choose / xsl: when ainsi

xsl: choose

Xsl XSLT: choose instruction est similaire à xsl: if, mais a quelques différences clés peu:
• Un élément xsl: choose permet de tester plus d'un état et ajouter des nœuds différents à l'arbre résultat à partir de laquelle la condition est vraie.
• Un élément xsl: choose peut avoir un modèle par défaut à ajouter à l'arbre résultat, si aucune des conditions sont vraies. (Comparez xsl: if, qui n'a pas d'équivalent d'un "autre" condition.)
• La élément xsl: choose a sous-éléments spécifiques qui sont nécessaires pour que cela fonctionne, alors vous pouvez mettre tous les éléments bien formés que vous voulez à l'intérieur d'un élément xsl: if.

<xsl:choose>
<xsl:when test="boolean-expression">
Faites quelque chose quand cette expression-booléenne est TURE
</ Xsl: when>
<xsl:otherwise> Faites autre chose </ xsl: otherwise>
</ Xsl: choose>


2008 13 septembre 2008

JavaScript: Modifier page web dans le navigateur

Eh bien, je dois dire, pas une telle pièce utile de la science, mais si vous êtes un développeur Web, pourrait venir à portée de main, un jour (ou seront-ils?). Voici bookmarklet petite, qui permet d'éditer la page Web pour n'importe quel site.
Et Désolé! Vous pouvez enregistrer les résultats sur votre machine locale.

javascript: document.body.contentEditable = 'true'; document.designMode = 'on'; void 0


2008 4 septembre 2008

Blocs de page fixe (Cela reste statique sur la fenêtre de défilement) en utilisant le CSS uniquement

Ce poste peut être un bon exemple pour l'expression «grand-mère d'enseignement dans les orties" ... Parce que c'est juste BASE commandes CSS. Mais pour ceux qui, comme l'inconscient moi, cela pourrait être une bénédiction dans le déguisement. J'ai toujours pensé (je ne pouvais perdre mon travail pour dire cela), il était seulement possible de garder une partie du contenu de page HTML statique (sens, sa position reste tel quel sur Scroll fenêtre), en utilisant des scripts intelligents, Faire toutes les démarches scientifiques calculs pour trouver la position dynamique, le piégeage des événements Window.scroll et la mise en timeouts etc

Je n'aurais jamais pensé qu'il pouvait aussi simple que cela .... Voici ci-dessous dans le CSS / HTML, j'ai quatre blocs statiques, un fixé à chaque extrimities de la page, Haut, Droite, Bas et Gauche ... Inutile de dire ... vous pouvez choisir l'une quelconque ou plus si besoin est ...

CSS
. Statique {display: block; z-index: 10; color: # ffffff; overflow-x: hidden; overflow-y: hidden; position: fixe à échéance;
}
# Contenu {margin: 0px 100px 150px 160px; border: 1px solid # e6e6e6}

# Wrap-t {top: 0px; background: # 33CC66; width: 100%; hauteur: 55 pixels;}

# Wrap-l {top: 80px; background: # FF9966; hauteur: 300px; largeur: 150px; marge: 2px solid # e6e6e6;}

# Wrap-b {bas: 0px; background: # 3333CC; width: 100%; hauteur: 55 pixels;}

# Wrap-r {top: 80px; background: # 6666FF; hauteur: 300px; largeur: 140px; marge: 2px solid # e6e6e6, à droite: 0;}

HTML
id="contents"> <div Vous contenu de la page principale </ div>
<div id="wrap-b" class="static">
Article statique en bas de page
</ Div>
<div id="wrap-t" class="static">
Article statique sur la page Haut
</ Div>

<div id="wrap-l" class="static">
Article statique sur la page à gauche
</ Div>
<div id="wrap-r" class="static">
Article statique sur le droit page
</ Div>

Voir un exemple wroking ici


2008 2 septembre 2008

CSS hack: Javascript, CSS, HTML pour Firefox uniquement

Plus d'une fois nous nous sentons le besoin d'écrire hacks navigateur specfic (si ce n'est pas une bonne pratique, nous les développeurs d'assurance-chômage ont de recourir à de tels maux jusqu'à ce que les guerres Navigateurs grands vient à une trêve). Plus tôt, je l'ai mentionné dans cet article Pour votre IEs Seulement , comment écrire un extrait de CSS qui serait visible par les navigateurs IE <IE7 seulement.

Hier, j'ai eu un cas, où je voulais écrire quelques extraits de FireFox spécifique CSS. Eh bien! Je ne sais pas si il ya un code CSS pour cela, mais il ya un code HTML. Il ya un hic cependant, ce morceau de code HTML doesnot de validation HTML passe. Mais, anywaz! Si vous êtes bloqué ou mal en tant que telle, n'a pas en ce qui concerne-pour la validation (parfois il faut être cruel), vous pouvez utiliser la suivante pour déclarer un lien vers une feuille de style que FF ou même simplement le code de la CSS au sein de ce bloc. Le code est

<comment> Mettez votre Firefox uniquement HTML / CSS / Scripts ici </ commentaire>

par exemple,
<comment>
<style>
Styles * / for FF seulement * /
fieldset {border: 1px # dddddd solide;}
</ Style>
</ Commentaire>

I "m heureux pour le moment ...


2008 1 septembre 2008

Supprimer l'élément spécifique à partir d'un tableau javascript qui correspond à une chaîne passée

Voici moyen rapide d'étendre l'objet Array natif Javascript, juste pour le faire ...

Array.prototype. removeItem =function(str) {
for(i=0; i<this.length ; i++){
if(escape(this[i]).match(escape(str.trim()))){
this.splice(i, 1); break;
}
}
return this;
}

Donc maintenant vous pouvez faire quelque chose comme ça ...

var animals= new Array("dog","lion","cat","tiger","elephant");
animals. removeItem ('tiger');

Maintenant le tableau des animaux contiendra «chien», «lion», «chat», «éléphant»;

PS: Et voici le prototype string trim trop ...

String.prototype.trim=function(str) {
str = this != window? this : str;
return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}


Profitez ....


NDK la maison | Exprimant IT | Bouche Exprimant | Penmenship Exprimant | Awe Exprimant | m'exprimer