Avatar billede klovnefisken Nybegynder
21. december 2010 - 22:41 Der er 7 kommentarer og
1 løsning

update af tabel ved klik

<table>
<tr><td>
<table>
<tr><td>link</td></tr>
<tr><td>pdf</td></tr>
<tr><td>type 1</td></tr>
<tr><td>type 2</td></tr>
<tr><td>type 3</td></tr>
<tr><td>type 4</td></tr>
</table>
</td><td>
// opdatere dette felt ved klik på link-pdf-type1-type2-type3-type4
</td></tr>
</table>

er der nogen der kan hjælpe mig med noget kode der kan hjælpe mig med at kunne skifte en tekst ud i tabel felten når jeg klikker , sådan af det sker uden reload af siden
jeg vil tro det er noget javascript/ajax der skal bruges
på forhånd tak
Bruno
Avatar billede majbom Novice
21. december 2010 - 23:09 #1
hvad skal det opdateres med? noget tekst du kender, eller skal det hentes fra en database eller anden kilde?
Avatar billede klovnefisken Nybegynder
21. december 2010 - 23:24 #2
Ja det er forskelige html formularer der skal være samt et billed , og der er fuld kendt på forhånd, kan jeg bare se en kode der kan skrive det samme som det der skal laves til en knap
Link - pdf - type 1 - osv
Men det ved jeg ikke lige h orden skal se ud så de bliver klik bare i javascript
Men som <a href="#"> link <\a>
Og hvordan der så skal opdateres i det andet felt
Avatar billede majbom Novice
21. december 2010 - 23:29 #3
det er ret langhåret at bygge en hel formular op vha DOM.

jeg mener dog at du med jQuery kan hente en anden side ind - prøv at søg lidt på det, jeg er ikke jQ-mand :)
Avatar billede heinzdmx Nybegynder
22. december 2010 - 09:19 #4
Der er måske to løsninger på det du vil:

1. Det er noget statistisk tekst der altid er den samme men kun skal vises når man gør noget bestemt. Løsning: lav en div med id og sæt den til display:none; og lad javascript gøre den synlig.

2. Linket skal være noget alt efter hvad nogle bestemte beslutninger. Løsning: Jeg vil anbefale dig jQuery, du kan som splazz siger hente kode fra en anden side og så indsætte det i din tabel.

Den første løsning i jQuery kunne være noget ala:

<table>
<tr><td>
<table>
<tr><td>link</td></tr>
<tr><td>pdf</td></tr>
<tr><td><a href="side med type 1 til ikke javascript brugere" class="pdf-link">type 1</a></td></tr>
<tr><td><a href="side med type 2 til ikke javascript brugere" class="pdf-link">type 2</a></td></tr>
<tr><td><a href="side med type 3 til ikke javascript brugere" class="pdf-link">type 3</a></td></tr>
<tr><td><a href="side med type 4 til ikke javascript brugere" class="pdf-link">type 4</a></td></tr>
</table>
</td><td>
<span id="updateFelt">
// opdatere dette felt ved klik på link-pdf-type1-type2-type3-type4
</span>
</td></tr>
</table>
<script type="text/javascript">
$(document).ready(function(){
    $("#updateFelt").hide();
    $(".pdf-link").click(function(){
          $("#updateFelt").html("tekst der skal indsættes");
          $("#updateFelt").show();
    });
});
</script>


For at dette virker skal du bruge jQuery framework som kan hentes herfra: jquery.com


Forrige vil gøre alle link med class="pdf-link" til clickbare og de vil alle gøre det samme nemlig sætte "updateFelt" indhold lig med "tekst der skal indsættes" og så vise den.

Men forklar gerne hvad det er du præcis vil opnå?

Er "link" og "pdf" også link ? eller er det kun type1 type2 osv. der skal være link?
Avatar billede klovnefisken Nybegynder
22. december 2010 - 09:56 #5
hej heinzdmx

ja dette ligner løsningen på det jeg gerne vil have
og ja link og PDF skal også være klikbare
der bliver nogle flere typer med tiden
det der skal vises i den anden tabel felt er forskellige formulare lavet i HTML, og helt forskellige er de nu heller ikke , for alle input er de same, men det der er forskel er hviske der er sat type="hidden"
så kan jeg sagtens se at "tekst der skal indsættes" bare er en lang "HTML" streng med formularen i , dette er ikke nogen problem for mig.
sagt meget kort er at link-pdf-typ1-typ2 osv skal give hver sin formular der skal vises i den anden felt.

Bruno
Avatar billede heinzdmx Nybegynder
22. december 2010 - 10:39 #6
En metode der er omstændig hvis der er flere, men måske er acceptabel kan være:


$(document).ready(function(){
    $("#updateFelt").hide();
    $(".pdf-link").click(function(){
          var id= $(this).attr('id');
          var teskten = "";
          switch (id)
          {
              case 'link':
                    teksten = "tekst der skal indsættes";
                    break;
              case 'pdf':
                    teksten = "tekst der skal indsættes";
                    break;
              case 'type1':
                    teksten = "tekst der skal indsættes";
                    break;
              case 'type2':
                    teksten = "tekst der skal indsættes";
                    break; 
          }
          $("#updateFelt").html(teksten);
          $("#updateFelt").show();
    });
});


Så skal du tilføre hvert link en unik id der bruges til at lave switchen.

Alternativt kan du bruge jquery load funktionen (men jeg oplever problemer med IE med den selv?)

Den lyder:
var randomisedURL = "index.php?random="+Math.random()*99999;
$('#uploadFelt').load(randomisedURL #uploadFelt);


Tag dig ikke af det med random, det er der for at fixe en IE fejl som foregår fordi IE eller cacher resultatet og derfor ikke vil virke.
Avatar billede klovnefisken Nybegynder
22. december 2010 - 16:22 #7
Takker det hjælp nu har jeg løst mit problem
Nu skal du bare have dine point
Bruno
Avatar billede heinzdmx Nybegynder
22. december 2010 - 21:53 #8
Svar her :)
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