Vraag betreffende link in callback message ajax jquery

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Brecht S

Brecht S

04/05/2015 10:09:15
Quote Anchor link
Ik heb een ajax script wat perfect werkt. Als dat is uitgevoerd (succesvol) dan stuurt mijn aparte php een tekst terug die op de frontend verschijnt. Ik heb dit gedaan met

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$( "#msg" ).append( msg );


Als ik in die message een button zet waarop kan geklikt worden zoals bvb <button id="test" type="button">Testknop</button> dan werkt deze niet. Ik heb ook al de onclick methode geprobeerd.
Waarschijnlijk komt dit doordat ik de verwerking ervan op mijn frontend doe waar het ajax script staat?
Gewijzigd op 04/05/2015 10:10:05 door Brecht S
 
PHP hulp

PHP hulp

21/11/2024 22:25:30
 
- Ariën  -
Beheerder

- Ariën -

04/05/2015 10:12:35
Quote Anchor link
kan je wat meer relevante code tonen?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

04/05/2015 11:54:52
Quote Anchor link
Het onclick event kan pas toegevoegd worden als het element aan de DOM toegevoegd is. Dat wil zeggen dat na '$( "#msg" ).append( msg );' dit moet komen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$('#mijn_button').click(function() {
    alert('Klik!');
});
 
Brecht S

Brecht S

04/05/2015 13:23:38
Quote Anchor link
Ik zal even mijn code beetje toelichten.
@Frank: jouw oplossing werkt perfect. Ik had jouw stukje code ook al bedacht maar op de verkeerde plaats gezet in mijn javascript ;-)

Mijn javascript is al volgt:
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<script type="text/javascript">

$(function () {
                
$('.group').hide();
$('#showhide').show();


// Datum
$('#datetimepicker4').datetimepicker({
        format: 'YYYY-MM-DD'
});
                
$("#datetimepicker4").on("dp.hide", function(e) {
        //alert($(this).val());
        var datum = $(this).val();
        
$.ajax({
    url : "test-ajax.php",
    type: "POST",
    data : {datum : datum},
    success: function(msg)
    {
        //$( "#msg" ).html( '<br><br>' );
        $( "#msg" ).append( msg );
        
$('#showhidebutton').click(function() {
    alert('Klik!');
});        
        
    },
    error: function (jqXHR, textStatus, errorThrown)
    {
 
    }
});        
        
        
        
        
});
// Einde datum    



// Couverts
$("#couverts").keyup(function(){
        
        var couverts = $(this).val();
        
$.ajax({
    url : "test-ajax.php",
    type: "POST",
    data : {couverts : couverts},
    success: function(msg)
    {
        $( "#msg" ).append( '<br><br>' );
        $( "#msg" ).append( msg );
    },
    error: function (jqXHR, textStatus, errorThrown)
    {
 
    }
});    
    
});    
// Einde couverts


    
    
// Tijd    
$('#datetimepicker3').datetimepicker({
        format: 'HH:mm',
        stepping: 15
});

$("#datetimepicker3").on("dp.hide", function(e) {
        //alert($(this).val());
        var tijd = $(this).val();
        
$.ajax({
    url : "test-ajax.php",
    type: "POST",
    data : {tijd : tijd},
    success: function(msg)
    {
        $( "#msg" ).append( '<br><br>' );
        $( "#msg" ).append( msg );
    },
    error: function (jqXHR, textStatus, errorThrown)
    {
 
    }
});        
        
        
        
        
});
// Einde tijd



setTimeout(function()
                {
                    $('.group').hide();
                    $('#showhide3').show();
                }, 10000);


});
</script>        


En in mijn test-ajax.php file staat het volgende:
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<?php
session_start();

$datum = $_POST['datum'];
$tijd = $_POST['tijd'];
$couverts = $_POST['couverts'];

$max_couverts = '5';


require ('config.php');
    
         $conn = mysql_connect($host,$user,$pass) or die (mysql_error());
         mysql_select_db($dbnm) or die (mysql_error());


if (!$datum == '') {
    
         $sql = "SELECT * FROM reservatie WHERE datum = '$datum'";
         $res = mysql_query($sql) or die (mysql_error());
         $num_rows_datum = mysql_num_rows($res);
        
         if ($num_rows_datum == 0) {
            
             echo 'Nog geen reservaties op deze datum';
             echo '<br>Reservatie kan doorgaan zonder problemen';
             echo '<br><button type="button" id="showhidebutton">Doorgaan</button>';
        
         }
else {
            
             echo 'Datum komt al voor in db';
             echo '<br>Eerst checken of er nog plaats is';
            
             $_SESSION["datum"] = $datum;
            
             $sql = "SELECT SUM(couverts) as reservaties FROM reservatie WHERE datum = '$datum'";
             $res = mysql_query($sql) or die (mysql_error());
             while($row = mysql_fetch_assoc($res)) {
                 $reservaties = $row['reservaties'];
             }

             echo '<br>Er zijn tot nu toe al '.$reservaties.' reservaties op deze datum';
             echo '<br>Het max aantal toegelaten reservaties is '.$max_couverts;
            
             if ($reservaties >= $max_couverts) {
                
                 echo '<br>Geen reservaties meer mogelijk die dag';
                
             }
else {
                
                 echo '<br>Reservatie kan doorgaan zonder problemen';
                 echo '<br><button type="button" id="showhidebutton">Doorgaan</button>';

             }
            
         }
        
        
}



if (!$couverts == '') {
    
         $sql = "SELECT * FROM reservatie WHERE datum = '".$_SESSION['datum']."'";
         $res = mysql_query($sql) or die (mysql_error());
         $num_rows_couverts = mysql_num_rows($res);
        
         if ($num_rows_couverts == 0) {
            
             echo 'Nog geen reservaties op deze datum';
             echo '<br>Reservatie kan doorgaan zonder problemen';
        
         }
else {
            
             echo '<br>Datum komt al voor in db';
             echo '<br>Terug checken of er nog plaats is';
            
             $_SESSION["couverts"] = $couverts;
            
             $sql = "SELECT SUM(couverts) as reservaties FROM reservatie WHERE datum = '".$_SESSION['datum']."'";
             $res = mysql_query($sql) or die (mysql_error());
             while($row = mysql_fetch_assoc($res)) {
                 $reservaties = $row['reservaties'];
             }

             echo '<br>Er zijn tot nu toe al '.$reservaties.' reservaties op deze datum';
             echo '<br>Het max aantal toegelaten reservaties is '.$max_couverts;
             echo '<br>Nu hebben we er '.$couverts.' extra bij';
             echo '<br>Dus in totaal zouden we nu '.($couverts + $reservaties).' couverts hebben';
            
             $tot_couverts = $couverts + $reservaties;
            
             if ($max_couverts <= $tot_couverts) {
                
                 echo '<br>Geen reservaties meer mogelijk die dag';
                
             }
else {
                
                 echo '<br>Reservatie kan doorgaan zonder problemen';
                
             }
        
         }
        
        
}




if (!$tijd == '') {
    
         $sql = "SELECT * FROM reservatie WHERE datum = '".$_SESSION['datum']."'";
         $res = mysql_query($sql) or die (mysql_error());
         $num_rows_tijd = mysql_num_rows($res);
        
         if ($num_rows_tijd == 0) {
            
             echo 'Nog geen reservaties op deze datum';
             echo '<br>Reservatie kan doorgaan zonder problemen';
        
         }
else {
            
             echo '<br>Datum komt al voor in db';
             echo '<br>Terug checken of er nog plaats is';
            
             $_SESSION["tijd"] = $tijd;
            
             $sql = "SELECT SUM(couverts) as reservaties FROM reservatie WHERE datum = '".$_SESSION['datum']."'";
             $res = mysql_query($sql) or die (mysql_error());
             while($row = mysql_fetch_assoc($res)) {
                 $reservaties = $row['reservaties'];
             }

             echo '<br>Er zijn tot nu toe al '.$reservaties.' reservaties op deze datum';
             echo '<br>Het max aantal toegelaten reservaties is '.$max_couverts;
             echo '<br>Nu hebben we er '.$_SESSION['couverts'].' extra bij';
             echo '<br>Dus in totaal zouden we nu '.($_SESSION['couverts'] + $reservaties).' couverts hebben';
            
             $tot_couverts = $_SESSION['couverts'] + $reservaties;
            
             if ($max_couverts <= $tot_couverts) {
                
                 echo '<br>Geen reservaties meer mogelijk die dag';
                
             }
else {
                
                 echo '<br>Reservatie kan doorgaan zonder problemen';
                
             }
            
         }
        
        
}


?>
Gewijzigd op 04/05/2015 13:30:16 door Brecht S
 



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.