我需要通过嵌入的 html 从 php 调用 javascript 函数。
这是我的职责。
<script>
// THIS JAVASCRIPT REDIRECTS TO EDITUSER.PHP AND PASSES USERID VALUE.
function startMaint(mo, yr){
window.location = "startmaintenance.php?mo=" + mo + "yr=" + yr;
}
</script>
这是我调用函数的地方。
<form method="POST" action="home.php">
<select name="monthselect">
<option value="" disabled selected> Select Month: </option>
<?PHP
echo"<option value=01>January</option>";
echo"<option value=02>February</option>";
echo"<option value=03>March</option>";
echo"<option value=04>April</option>";
echo"<option value=05>May</option>";
echo"<option value=06>June</option>";
echo"<option value=07>July</option>";
echo"<option value=08>August</option>";
echo"<option value=09>September</option>";
echo"<option value=10>October</option>";
echo"<option value=11>November</option>";
echo"<option value=12>December</option>";
?>
</select>
<select name="yearselect">
<option value="" disabled selected> Select Year: </option>
<?PHP
$year = 1920;
While($year <= date("Y")){
echo"<option value=$year>".$year."</option>";
$year++;
}
echo"</select>";
echo "</div>";
echo "<div class='center'>";
$strMonth = $_POST['monthselect'];
$strYear = $_POST['yearselect'];
echo "<input type='button' class='btn' name='start' value='Start' onclick='javascript:startMaint('".$strMonth."','".$strYear."');'>";
?>
</form>
我遇到的问题是,当我按下“开始”按钮时,我的代码没有执行。
当我将参数传递给函数时,我不确定我使用的语法是否正确。任何帮助,将不胜感激。
如果我手动输入这样的值:
echo "<input type='button' class='btn' name='start' value='Start' onclick='javascript:startMaint(". 1 .",". 1980 .");'>";
效果很好。但是如果我用变量替换这些值,代码不会执行...我想要做的是将 $strMonth
和 $strYear
值传递给函数。
最佳答案
php 不是一种均匀驱动的编程语言,它是一种服务器端编程语言,因此您需要使用 javascript 来解决您的问题
这样解决问题
<script>
document.getElementById('btn').addEventListener("click", function(){
var mo = document.getElementById('monthselect').value;
var yr = document.getElementById('yearselect').value;
window.location = "startmaintenance.php?mo="+mo+"yr="+yr;
});
</script>
Html 和 PHP 代码
<form method="POST" action="home.php">
<select id="monthselect" name="monthselect">
<option value="" disabled selected> Select Month: </option>
<?php
echo"<option value=01>January</option>";
echo"<option value=02>February</option>";
echo"<option value=03>March</option>";
echo"<option value=04>April</option>";
echo"<option value=05>May</option>";
echo"<option value=06>June</option>";
echo"<option value=07>July</option>";
echo"<option value=08>August</option>";
echo"<option value=09>September</option>";
echo"<option value=10>October</option>";
echo"<option value=11>November</option>";
echo"<option value=12>December</option>";
?>
</select>
<select id="yearselect" name="yearselect">
<option value="" disabled selected> Select Year: </option>
<?php
$year = 1920;
While($year<= date("Y")){
echo"<option value=$year>".$year."</option>";
$year++;
}
?>
</select>
</div>
<div class='center'>
<input type='button' id="btn" class='btn' name='start' value='Start' >
</form>
在 Html 代码中我添加了三个 id 属性 id="monthselect", id="yearselect", id="btn"
关于javascript - 如何将多个变量传递给 HTML/PHP 中的 JavaScript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39879761/