我试图弄清楚为什么提交表单后没有调用此函数。提交表单后,“ checkForm()” JS函数可以正常工作,但是我似乎无法使checkDates()函数正常工作。我尝试将其移到PHP代码上方,但未显示任何警告消息。任何帮助,不胜感激,谢谢!
这是我文件的伪代码版本:
<?php
if(isset($_POST['next'])){
// Some PHP code
echo "<script> checkDates(); </script>";
}
?>
<form name="form1" id="form1" method="post" action="<?php print $thispage;?>" onsubmit="return checkForm()">
// Some HTML code
</form>
<script>
var isDateTimeValid = true;
function checkDates() {
alert("Hello");
isDateTimeValid = false;
}
function checkForm () {
if (isDateTimeValid == true) {
return true;
}
else {
return false;
}
}
</script>
最佳答案
试试这个,它将起作用。
在这里,您的php代码必须位于文件的最后,然后它将起作用。否则不行。
<form name="form1" id="form1" method="post" action="#" onsubmit="return checkForm()">
// Some HTML code
<input type="hidden" name="next" value="sd">
<input type="submit">
</form>
<script>
var isDateTimeValid = true;
function checkDates() {
alert("Hello");
isDateTimeValid = false;
}
console.log(isDateTimeValid);
function checkForm () {
if (isDateTimeValid == true) {
return true;
}
else {
return false;
}
}
</script>
<?php
if(isset($_POST['next'])){
echo "<script> checkDates(); </script>";
}
?>