JS / jQuery Oplossing?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

A Bal

A Bal

24/04/2012 16:28:44
Quote Anchor link
Mijn webpagina bestaat uit twee delen.

Aan de linker kant heb ik een tabel met daarin gegevens uit een database die ik laad met php. Als je met de muis over een rij uit die tabel heenbeweegd zou ik graag aan de rechter kant graag info willen laten tonen die aan die rij gekoppeld zit, hoe kan ik dit voor elkaar krijgen?

Alvast bedankt
 
PHP hulp

PHP hulp

28/11/2024 21:48:29
 
Bas IJzelendoorn

Bas IJzelendoorn

24/04/2012 16:30:17
Quote Anchor link
zoek je iets als een jquery tooltip?
Gewijzigd op 24/04/2012 16:30:29 door Bas IJzelendoorn
 
A Bal

A Bal

24/04/2012 16:32:21
Quote Anchor link
Ik zoek en oplossing voor het probleem, maakt mij eerlijk gezegt niet uit hoe.

Als jij (of iemand anders) een manier weet hoe je dit kan doen zou ik het graag horen, ook als het geen js/jquery is.
Gewijzigd op 24/04/2012 16:35:59 door A Bal
 
Kris Peeters

Kris Peeters

24/04/2012 16:42:21
Quote Anchor link
Ja, dit is niet al te moeilijk.

Toon eens de code waarmee je die tabel vult (kwestie van een beetje in een gelijkaardige stijl te blijven)
 
A Bal

A Bal

25/04/2012 09:00:08
Quote Anchor link
De twee helften bestaan uit twee divjes.

In het linker div laad ik een aantal rijen uit een sql database dmv een while loopje. Laten we zeggen dat een rij uit 4 kolommen bestaat. Kolom 1 en 2 zet ik links in een tabel, en alleen waneer je over een rij heenbeweegd wil ik graag in de rechter div kolom 3 en 4 weergeven die bij die rij hoord.
 
Kris Peeters

Kris Peeters

25/04/2012 11:19:47
Quote Anchor link
Okay, een voorbeeld

index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
if (!empty($_GET['id'])) {
  switch ($_GET['id']) {
    case
15:
      $content = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum accumsan feugiat lorem, nec rhoncus odio vestibulum quis. Vivamus id ante sed diam varius vehicula. Suspendisse nec ante urna. Sed eu elit vitae ante euismod dignissim quis at ante. Integer fermentum sem non justo sollicitudin dictum ac sed libero. Pellentesque malesuada bibendum laoreet. Nam vulputate nunc non risus accumsan id adipiscing purus aliquet. Integer vulputate posuere lorem ac aliquam. Aenean semper scelerisque leo, a venenatis purus dictum ac. Mauris adipiscing tempor risus. Aenean a nulla nibh. Quisque ut ipsum nisi, quis rutrum libero. Duis iaculis dui quam, id luctus nibh.';
      break;
    case
19:
      $content = 'Vivamus a nisl nunc. Nulla a malesuada mi. Nunc et turpis sit amet est elementum congue. Nulla mauris lectus, porta id volutpat hendrerit, ultrices et velit. Morbi tempor, urna a hendrerit porttitor, eros diam sagittis sem, eu facilisis massa arcu et augue. Aliquam erat volutpat. Cras nec urna orci, egestas hendrerit neque. Maecenas rutrum lacus neque. Suspendisse consequat mi vel nibh hendrerit non semper ipsum pretium. Sed pretium condimentum blandit. Proin sit amet libero purus, at euismod metus. Vestibulum ultrices pretium turpis, eu auctor mi sollicitudin nec. In hac habitasse platea dictumst. Vestibulum semper ultrices ipsum, quis interdum sem lobortis eget.';
      break;
    case
25:
      $content = 'Phasellus iaculis, velit quis consectetur lacinia, erat purus tempor nibh, sit amet aliquet neque sem sed augue. Suspendisse fringilla porta rutrum. Etiam ultricies dolor eu magna semper tempor malesuada mi pretium. Donec lectus odio, adipiscing et viverra a, viverra et est. Aliquam ac lacus lectus, eu tincidunt elit. Vestibulum sagittis sem in nunc pulvinar accumsan. Aenean rhoncus vehicula magna, a aliquam ligula aliquam vel. Phasellus eros massa, tempor sed tempus sit amet, pretium nec mi. Curabitur imperdiet ligula non nisl condimentum vestibulum. Vivamus interdum ullamcorper enim, sit amet consequat metus semper vitae. Fusce nec nibh dapibus velit fermentum consequat in quis mi. Vivamus consectetur blandit purus nec gravida.';
      break;
    case
27:
      $content = 'Mauris et sapien purus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Pellentesque non lorem vitae nunc rutrum feugiat. Donec suscipit, lorem in lobortis aliquam, massa risus ullamcorper nisl, quis feugiat enim libero nec metus. Donec purus nisi, mattis in adipiscing eget, congue congue mi. Nunc volutpat vulputate lectus vel interdum. Nullam sodales condimentum ligula, non commodo nunc semper quis. In sed dui ac purus accumsan tincidunt. Vestibulum massa sem, pharetra vel sodales sed, facilisis eu ante. Sed et ultricies turpis.';
      break;
  }

  echo $content;
  exit;
}

?>

<html>
  <head>
    <link rel="stylesheet" type="text/css" href="style.css"/>
    <style>
      #preview {
        width: 400px;
        height: 600px;
        overflow: auto;
        background-color: #eeeeee;
        float: right;
        padding: 10px;
      }
    </style>
  </head>
  <body>
    <div id="preview" border="1"></div>
    <table>
      <tr><th>title</th><th>&nbsp;</th></tr>
      <tr><td>Titel record 15</td><td><input type="button" class="preview_button" data-id="15" value="preview"/></td></tr>
      <tr><td>Titel record 19</td><td><input type="button" class="preview_button" data-id="19" value="preview"/></td></tr>
      <tr><td>Titel record 25</td><td><input type="button" class="preview_button" data-id="25" value="preview"/></td></tr>
      <tr><td>Titel record 27</td><td><input type="button" class="preview_button" data-id="27" value="preview"/></td></tr>
    </table>
    <script src=" https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script src="js.js"></script>
  </body>
</html>


js.js // aangepast
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$(document).ready(function() {
  // variables
  var preview_buttons = $('.preview_button');
  var preview = $('#preview');
  
  
  // bind events
  $('.preview_button').hover(function(e){
    // id halen uit de data-id attribute van de knop
    var id = $(this).data().id;
    // met Ajax de preview ophalen
    $.ajax({
      url: 'index.php?id=' + id,
      success: preview_loaded
    });
  });
  
  function preview_loaded(data) {
    $(preview).html(data);
  }
  
});
Gewijzigd op 25/04/2012 12:14:42 door Kris Peeters
 
Wouter J

Wouter J

25/04/2012 11:25:10
Quote Anchor link
@Kris, dan zou ik i.p.v. die anonymous self-executing function gewoon de document.ready functie van jQuery gebruiken, werkt hetzelfde (global scope creëren en je hebt er nog een DOM ready functionaliteit bij):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
jQuery(function($) {
  // code
});
 
Kris Peeters

Kris Peeters

25/04/2012 11:31:03
Quote Anchor link
Misschien wel, ja.

De constructie
(function($){
})(jQuery)

zal vooral interessant zijn voor plugins / jQuery .fn extensies ...

(Ik pas het aan)
Gewijzigd op 25/04/2012 12:34:14 door Kris Peeters
 
Wouter J

Wouter J

25/04/2012 11:35:40
Quote Anchor link
Kris, ja. Dat komt omdat plugins niet pas moeten worden gemaakt bij document.ready. Die moeten gewoon al klaar staan, en dan heb je die extra functionaliteit dus helemaal niet nodig en zul je dus gewoon die IIFE gebruiken.
 
A Bal

A Bal

25/04/2012 11:54:09
Quote Anchor link
Ik zal er straks eens naar kijken als ik de tijd heb, bedankt!

Toevoeging op 26/04/2012 10:45:54:

Ik heb het enigzins werkend gekregen met Peeters' code, alleen word in de preview div de hele pagina opnieuw geladen binnen de pagina, en niet alleen de $content

EDIT: Heb de code in nieuwe php pagina geplaatst en die geladen.. waarom ik daar niet direct aan dacht..
Gewijzigd op 26/04/2012 12:53:11 door A Bal
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.