繁体   English   中英

如何在PHP echo中调用javascript函数/编写脚本

[英]How to call javascript function/write script inside PHP echo

我写了一段代码,下面是代码

<script type="text/javascript">
function submitform()
{
    document.myform.action='http://mysite/index.php';
    document.myform.submit();
}
</script>

<?php
if(isset($_POST['submit_details']))
{
       echo "<script typ=javascript> submitform();</script>";
}

?>
<form id="myform">
  ------
  ------
<input type="submit" name="submit_details">
</form>

当我尝试提交表单时,它给我错误document.myform未定义,如何解决此错误

调用脚本时document.myForm是未定义的,因为它是在浏览器收到form元素之前运行的。 您需要将脚本放在form标签之后,或使用document.onload事件处理程序(或类似方法)。

(尽管您为什么不希望用户自动执行JS自动立即提交表单的原因超出了我。)

如果从字面上看这是您的代码,那么wazoo就会出现语法错误。

尝试:

<?php if (isset($_POST['submit_details'])) { ?>
   <script type="text/javascript">submitForm();</script>
<?php } ?>

尝试将脚本移动到页面底部,或者更好的方法是监听window.onload事件。 当浏览器加载脚本时,DOM尚未完成加载,因此无法找到document.myForm。

您为什么不将javascript提交像这样输入呢?

<input type="submit" name="submitdetails" onclick="javascript:submitform();" />

然后使用$ post和jquery来运行页面。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM