Avatar billede retep Nybegynder
26. september 2001 - 14:27 Der er 15 kommentarer og
3 løsninger

linke felter i tabel

Hvis man har en tabel med flere felter, og henter en tekst ud fra database, er det da muligt at \'linke\' de felter, så teksten fortsætter i et nyt felt, hvis der ikke er plads i det første?

Eks.

*********************************
*  billede    *  her starter  *
*              *  teksten      *
*              *                *
*********************************
*  Her skulle teksten gerne    *
*  fortsætte (colspan=2)      *
*                              *
*********************************

Håber I forstår mit problem ;)
Mvh
Retep
Avatar billede retep Nybegynder
26. september 2001 - 14:28 #1
Hmmm... Min ascii-tegning blev vist ikke så god ;)
Avatar billede jacobve Nybegynder
26. september 2001 - 14:29 #2
så skal du måske gå ind dynamisk at ændre rowspan på den celle du paster teksten i...

altså hvis teksten er så og så lang, så skal cellen have rowspan=\"2\".

hvis du forstå....
Avatar billede jacobve Nybegynder
26. september 2001 - 14:31 #3
jeg tænker på en bergning ala.

rowspan=\"<%=len(tekst)/maxlængde%>\"

hvor maxlængde er den længde af tekst der kan være i præcist et felt.

på den måde vil du dunamisk kunne fylde teksten videre ned i cellen under.
Avatar billede jacobve Nybegynder
26. september 2001 - 14:32 #4
mit eksemplen er så skrevet i asp... ved ikke hvordan du henter data ud af din base.
Avatar billede roenving Novice
26. september 2001 - 14:34 #5
Hrm...
Du kan kun gøre det ved at checke hvor mange tegn, som er i din streng, og som du kan se, er det ikke altid en god måde at checke længden.


men:

<script type=text/javascript>

function delStreng(){
  var felt1=document.formNavn.felt1Navn;
  if (felt1.value.length>30){
    var felt2=document.formNavn.felt2Navn;
    felt2.value = felt1.value.substr(30,felt1.value.length);
    felt1.value = felt1.value.substr(0,30);
  }
}
</script>

<body ... onLoad=\"delStreng\">

hth
jes
Avatar billede retep Nybegynder
26. september 2001 - 15:04 #6
Problemet er bare, at jeg ikke ved hvor stort billedet er. Så jeg kan ikke regne mig frem på, hvor mange tegn der kan være i feltet, da det også varierer efter billedestørrelsen :-/

Ellers nogle gode forslag.
Avatar billede jacobve Nybegynder
26. september 2001 - 16:34 #7
så kan du jo regne ud hvor højt billedet er og bruge det som mål.

altså hvis billedet er 100px højt, og en linie fylder 12px, så er der 100/12 antal linier at skrive på.

en linies længde:
hvis billedet er 100px bred og en linie uden billede er 300px bredt så er der plads til 200px tegn.
et tegn fylder måske 5px dvs. 200/5 antal tegn på en linie.

rowspan=\"<%=len(tekst)/((100/12)*(200/5))%>\"

men det kan godt være den tanke er langt ude....
Avatar billede olebole Juniormester
26. september 2001 - 17:01 #8
<ole>
Du kan jo fylde al din tekst i et \'hidden\' <div>. Så måler du på dit div med \'document.getElementById(divID).offsetHeight\'. Så må du kunne beregne hvor meget af din tekst, der skal i hver celle. Derefter er det bare at fylde i tabelcellerne med \'document.getElementById(tdID).innerHTML=streng1\' og \'document.getElementById(tdID).innerHTML=streng2\'.
/mvh
</bole>
Avatar billede roenving Novice
28. september 2001 - 01:22 #9
>>olebole
Derefter er det bare *hir hir*
Avatar billede olebole Juniormester
28. september 2001 - 02:18 #10
roenving >> Man laver en test på højden i et skjult div - med samme bredde som tabelcellen - og gemmer resultatet i en variabel \'divH\'. Så lægges hele innerHTML\'en over i en variabel \'cont\'. Derefter kan man sige:
  words = cont.split(\" \");  // Array, indeholdende tekstens enkelte ord
  numOfWords = words.length;  // Antal ord i teksten
Man kan så sige:
  wordsInFirstTD = Math.floor( (numOfWords/divH)*wantedTDheight );
  firstTDstring = words.slice(0, wordsInFirstTD);  // Array af ord
  secondTDstring = words.slice(wordsInFirstTD+1, numOfWords);  // Array af ord
...og til sidst:
document.getElementById(\"firstTD\").innerHTML = firstTDstring.join(\" \");
document.getElementById(\"secondTD\").innerHTML = secondTDstring.join(\" \");

Man kunne evt. lige efter, man har isoleret den første streng, teste højde af denne og se, om den tilfredsstiller ønskene om højden af cellen.
Dette er ikke testet, men det kan helt sikkert lade sig gøre med en smule puslerier  :)
/mvh
Avatar billede roenving Novice
28. september 2001 - 02:20 #11
>>ole
Ja, bare ...
Avatar billede olebole Juniormester
28. september 2001 - 02:25 #12
De har sat alle de fine små taster på dit keyboard, fordi du forventes at bruge dem ........flittigt!  ;O)
Årrhh....roenving, det er da ikke engang en halv snes linier - det er da \'bare\'  :)
/mvh
Avatar billede roenving Novice
28. september 2001 - 02:29 #13
Ja, men der er et eller andet med at de der taster skal trykkes på i en eller anden rækkefølge, som *bare* genereres et eller andet sted ca. 40 cm. fra skærmen *G*
Avatar billede olebole Juniormester
28. september 2001 - 02:47 #14
Hvis du har en god JS-bog (f.eks. \'The Definitive Guide\' fra O\'Reilly), så tag en uge, hvor du går de forskellige array-funktioner igennem og leger med dem - og på samme måde streng-funktionerne. Det er en kanon øvelse og de funktioner går igen ligegyldig, hvad du laver i JS. Tag dem så igen efter et par måneder  :)
Som du nok selv har opdaget, giver det at svare på Eksperten også enormt meget. At kombinere de to indlæringsformer kan jeg på det varmeste anbefale. Det er i høj grad Jer, der har lært mig, hvad jeg kan. Men tak for komplimenten  ;o)
/mvh
Avatar billede roenving Novice
28. september 2001 - 02:59 #15
Ja, jeg har faktisk også udvidet mit javascript-kendskab utroligt meget med kombinationen Eksperten.dk og en rigtig god bog (Javascript Bible 4th Edition af Danny Goodman).
Avatar billede retep Nybegynder
28. september 2001 - 11:37 #16
Tak for det ;)

Jeg er stadig ikke helt besluttet på hvilken løsning jeg vælger(eller om jeg vælger den dovne, og finder på noget andet;), så pointene bliver fordelt ligeligt.

Mvh
Retep

Avatar billede roenving Novice
28. september 2001 - 11:39 #17
Takker for points ;~}
Avatar billede olebole Juniormester
28. september 2001 - 11:43 #18
...so do I  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester