У меня возникли некоторые проблемы при работе с цитатами для этого. Итак, давайте рассмотрим пример отправки двух строк, которые мы хотим объединить, через переменные, а затем запустить их через функцию JavaScript для их объединения (я понимаю, что это очень просто в PHP, и я знаю, как это сделать, я просто использую этот пример ради простоты).
Код JavaScript:
function con(first, last) {
answer = first+last;
alert(answer);
return;
}
HTML и PHP:
<?php
$first = "Butter";
$last = "Last";
echo '<input type="button" value="Get Answer" onclick="con(".$first.", ".$last.")" />';
?>
Этот код выше не работает, как я могу заставить его работать?
Спасибо всем
Если вы посмотрите на HTML, который он генерирует, он будет выглядеть примерно так:
<input type="button" value="Get Answer" onclick="con(".$first.", ".$last.")" />
Что, как вы видите, не правильно.
Есть несколько проблем с вашим кодом, во-первых, имена переменных, такие как $ first, не будут оценены до их значения, если они находятся в одинарных кавычках.
Пытаться:
echo '<input type="button" value="Get Answer" onclick="con("'.$first.'", "'.$last.'")" />';
Это выведет:
<input type="button" value="Get Answer" onclick="con("Butter", "Last")" />
что все еще не правильно, так как вы не передаете аргументы своей функции javascript правильно.
Пытаться:
echo '<input type="button" value="Get Answer" onclick="con(\''.$first.'\', \''.$last.'\')" />';
который должен выводить
<input type="button" value="Get Answer" onclick="con('Butter', 'Last')" />
что, надеюсь, работает 🙂
Вот ваше решение
Код JavaScript:
function con(first, last) {
answer= first+last;
alert(answer);
return;}
PHP и HTML код:
<?php
$first = "Butter";
$last = "Last";
echo '<input type="button" value="Get Answer" onclick=con("'.$first.'","'.$last.'") />';?>
когда вы передаете значение в функцию javascript через php, вы должны передать значение в «одинарной кавычке» или «двойной кавычке», например, onclick = con («‘. $ first.'», «‘. $ last.'»);