php - 如何在表单提交事件中从 PHP 调用 javascript 函数

标签 php javascript ajax

我想在表单提交事件中从 php 调用一个 javascript 函数。并且该 javascript 函数将访问 php 变量,使用 ajax 将它们发送到另一个网站上的 php 脚本。以下代码只是一个表示。

<?php
....
.....
......
if($_POST["action"]=="xyz"){
$myname = "asim";
    echo "<script type='text/javascript'>submitform();</script>";
}
.....
....
...
gotoanotherpagefinally();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
    function submitform(){
        alert("<?php echo $myname; ?>");
        $.ajax({
                type: 'POST',
                data: {
                    action: 'whatever',
                    fileID: "<?php echo $myname; ?>",
                },
                url: 'http://xyz.com/API/query.php'
            });
    }
</script>
</head>
<body>
<form id="myform">
  ------
  ------
<input type="submit" name="submit_details">
</form>
</body>
</html>

我需要从 php 调用 javascript 函数,因为 js 函数采用的 php 变量仅由 php 本身设置,而不是表单值或其他东西。

最佳答案

您可以使用 jQuery 捕获 submit 事件:

$("#myform").submit(function(e) {
  // needed so the default action isn't called 
  //(in this case, regulary submit the form)
  e.preventDefault(); 

  $.ajax(...);
});

关于php - 如何在表单提交事件中从 PHP 调用 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18289935/

相关文章:

javascript - 如何从 API 填充数据并加载到下拉列表中

java - 如何通过 setVisible() 方法 wicket ajax 更改方法中模型的可见性

php - Eloquent 查找错误的列

php - 验证 HTML 中的信息 - 代码定位

javascript - 为什么事件监听回调函数只能在函数作用域内起作用?

Javascript 动态创建 anchor 标记不起作用

javascript - 在 react 中调用作为 Prop 传递的方法

jquery - 在 .NET MVC4 中使用 Ajax 进行部分 View 加载

php - 在php页面中显示表中的特殊字符

javascript - 如何为此代码启用就地编辑..所以我需要在 Update.php 文件中更新该值