Jump to content

incrementer 1 a mon id


jer666

Recommended Posts

salut, oui je sais le titre n'est pas térrible mais j'ai pas trouvé plus explicite!

Voila je suis entrain de créer un nouveau site internet a base de xoops.

pour afficher la colonne de gauche j'utilise dans ma page cette fonction php

<{foreach item=block from=$xoops_lblocks}>

<div class="blockTitle"><{$block.title}></div>

<div class="blockContent"><{$block.content}></div>

</div>

<{/foreach}>

il faut que j'inclus une nouvelle dimension a ces blocs.

<{foreach item=block from=$xoops_lblocks}>

<li id="monid"> <div class="blockTitle"><{$block.title}></div>

<div class="blockContent"><{$block.content}></div></li>

</div>

<{/foreach}>

ca c'est pas super compliqué.

Il faut comprendre que ce bout de code va générer plus ou moins de blocs selon mes besoins.

Si vous connaissez un peu le css, vous savez alors que mon ID est fausse! puisqu'elle doit etre unique, et pourtant elle va se repetter...

Vous me direz que je n'ais qu'a utiliser une class.

C'est la que ca ce complique.

Je ne peux pas utiliser une class ici pour la simple et bonne raison que je ne peux pas :yes: l'id est reprise dans du javascript.

j'aimerais donc trouver un moyen simple et pas trop lourd d'implemeter +1 a chaque creation d'un bloc a mon <li>

en clair que mes blocs prenent la valeur monid1, puis monid2 ...

et ca jusqu'a 10 par exemple, et ensuite la meme chose mais qui commence a 11 et finit a 21 :cartonrouge:

une idée? merci :byebye:

Link to comment
Share on other sites

Un peu hors sujet, mais bon.

Pour ce qui est du côté css tu peux attribuer à un même bloc un id ET une class, comme ça tu n'aura pas à répéter le style plusieurs fois dans ta feuille de style, mais ça ne résoud pas ton problème puisque tu as toujours besoin d'un identifiant pour ton ciblage js.

Et un second point, lui aussi à côté, ton utilisation de <ul>/<li> est sémantiquement innaproprié.

ul = unordered list et li = list item

Donc tu ne dois pas mettre de titre dans ton li. De plus pour les titres il faut préférer la balise bloc "hx".

En fait il y a un jeu de balise qui peut éventuellement correspondre à ce que tu veux faire, c'est <dl>/<dt>/<dd>.

dl = definition list, dt = definition title et dd = definition description

Par contre la différence est que pour ton couple titre/contenu tu n'aura pas de bloc parent, seulement des blocs adjacents.

Si pour ta mise en forme un bloc parent est indispensable alors utilise plutôt <ul>/<li> mais avec <hx> en bloc enfant au lieu de div.

Link to comment
Share on other sites

Yangzebul :francais:

merci tout de meme pour ta reponse. le ul est utiliser comme conteneur de la colonne.

c'est gentil d'avoir repondu ca , mais j'ais pas besoin de conseil pour le css. Ca je sais faire :mdr: .

le li est bien utiliser puisque c'est l'utilisation que je veux en faire. et ma page est valide w3c! aprés que ca soit pas oldschool, et que je magouille un max c'est pas un soucit, quand le resultat est la, peu importe les moyens!

c'est en php ou en js que j'entrave rien :smack:

Sentinel :-D

j'ai rien compris! en php j'en suis encore au premier chapitre, "la variable" :mdr:

tu pourais me donner une paire deligne de code que je cherche un peu sur le net? :smack:

merci a vous 2, dsl si je m'emporte un peu sur toi Yangzebul , mais je me leve, je connais pas trop mal le css, et ta reponse en plus d'etre totalement hors sujet, rabaisse ma fierté; or j'ai assez de sang dans mon corps pour en etre fier :yes:

Link to comment
Share on other sites

Je pense qu'un truc tout bête comme ça devrait fonctionner...

<?php $cpt=0;?>
<{foreach item=block from=$xoops_lblocks}>
<?php $cpt++;?>
<li id="monid<?php echo $cpt;?>"> <div class="blockTitle"><{$block.title}></div>
<div class="blockContent"><{$block.content}></div></li>
</div>
<{/foreach}>

Link to comment
Share on other sites

bon en fait je me sui sun peu emballer.... :cartonrouge:

ca fonctionne, en effet, mais ca génère un gros probleme que je n'avais pas penser avant de tester... :p

ce script que tu as fait, est destiner a donner un nom unique a chaque bloc de xoops dans l'espoir de creer un effet de drag and drop sur mon xoops préféré.

le script de drag and drop savegarde l'emplacement de chaque bloc dans un cookies en prennant comme repere l'ID de chaque bloc.

Ton script générant a chaque rafraichissement un nouveau marquage, anihile la sauvegarde cookies, et replace les blocs a leur place nomale :-D

hum... je crois que je vais devoir creer bloc par bloc, et mettre une idéentité propre a chaqu'un, tanpis... :ouioui:

merci tout de même... je mettrais resolu quand j'aurais trouvé la meilleure des solution, le compromis idéal.. ;)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...