Je travaille sur un projet qui a une table. dans ce tableau sont les jalons et les parties des jalons.Variable PHP passant dans une fonction JS Ne fonctionne pas
Ceci est mon code:
<?php
$milestones = array();
while ($rij = $db->fetchassoc($result)) {
$milestones[$rij['milestone_id']][] = $rij;
}
foreach ($milestones as $milestone) {
echo '<tr id="' . $milestone[0]['milestone_id'] . '" class="milestone' . $milestone[0]['milestone_id'] . '">';
echo '<td>' . $milestone[0]['milestone_id'] . '</td>';
echo '<td><a href="javascript:keuzeGebruiker(milestone' . $milestone[0]['milestone_id'] . ',' . $milestone[0]['milestone_id'] . ');">' . $milestone[0]['milestone_titel'] . '</a></td>';
echo '<td>' . $milestone[0]['client'] . '</td>';
echo '</tr>';
for ($i = 0; $i < count($milestone); $i++) {
if (empty($milestone[$i]['milestonefase_titel'])) {
echo '<tr id="' . $milestone[$i]['milestonefase_id'] . '" class="milestone' . $milestone[$i]['milestone_id'] . 'fase fase">';
echo '<td></td>';
echo '<td style="color: red">Geen titel beschikbaar!</td>';
echo '<td></td>';
echo '</tr>';
} else {
echo '<tr id="' . $milestone[$i]['milestonefase_id'] . '" class="milestone' . $milestone[$i]['milestone_id'] . 'fase fase">';
echo '<td>' . $milestone[$i]['milestonefase_id'] . '</td>';
echo '<td>' . $milestone[$i]['milestonefase_titel'] . '</td>';
echo '<td></td>';
echo '</tr>';
}
if (!isset($_COOKIE['milestones'])) {
echo '<style>.fase{display: none;}</style>';
}
if (strpos($_COOKIE['milestones'], $milestone[0]['milestone_id']) !== false) {
echo '<style>.milestone' . $milestone[0]['milestone_id'] . 'fase{display: table-row!important;}</style>';
}
}
}
?>
Je dois envoyer la variable:
href="javascript:keuzeGebruiker(milestone'.$milestone[0]['milestone_id']. ','.$milestone[0]['milestone_id'].');" but that variable does not send to my JS function.
Mon premier paramètre est le nom de l'étape cliqué (par exemple 'de milestone403') et mon second paramètre est l'ID du jalon cliqué (exemple: '403').
Mais mon journal de la console dit:
ReferenceError: milestone403 is not defined
C'est ma fonction JS:
<script>
document.cookie = "milestones=" + [readCookie()];
var array = readCookie().split(",");
function keuzeGebruiker(name, value)
{
if ($('.' + name + "fase").is(":visible")) // Als milestone zichbaar is, dan word milestone onzichtbaar
{
var index = array.indexOf(value);
if (index !== -1)
{
array.splice(index, 1);
}
document.cookie = "milestones=" + array;
$('.' + name + 'fase').attr('style', 'display:none !important')// Maak het onzichtbaar
} else // Als milestone onzichtbaar is, dat word milestone zichtbaar
{
array.push(value);
document.cookie = "milestones=" + array;
$('.' + name + 'fase').attr('style', 'display:table-row !important')
}
}
</script>
Vous pouvez voir mes paramètres (nom et valeur)
Pourquoi je ne peux pas obtenir mon paramètre dans ma fonction JS ?? Quelqu'un peut-il m'aider avec ce problème ou a quelqu'un une solution.
Vous devez citer les variables entrant dans la fonction javascript, car ils sont des chaînes et pas des variables javascript. – aynber