php - 按下 HTML 按钮时停止页面刷新?
问题描述
大家好,我是互联网语言的新手,我想用苹果解释你的帮助!
我正在尝试用树莓派 3b+ 制作一个网络服务器控制的机器人。我已经使用一些 HTML 调用一些 PHP 代码,然后执行 Python 脚本来移动机器人。问题是,当我按下按钮移动机器人时,页面会刷新,然后再次加载所有内容,这真的很烦人。(HTML 和 PHP 在同一个文档中)
我读过一些人们说要使用<button>
标签的帖子type="button"
,但是当我这样做时,什么也没有发生。让我与您分享代码。其他人说要使用 AJAX,但我真的不知道如何使用。
HTML:
<form action="" method="post">
<div>
<div>
<button type="button" name="boton7"><img src="imagenes/up.png"></button>
</div>
<div>
<button type="button" name="boton8"><img src="imagenes/left.png"></button><!--
--><button type="button" name="boton10"><img src="imagenes/stop.png"></button><!--
--><button type="button" name="boton9"><img src="imagenes/right.png"></button><!--
-->
</div>
<div>
<button type="button" name="boton6"><img src="imagenes/down.png"></button>
</div>
</div>
</form>
PHP:
<?php
//Primera fila || mover_arriba.py
if(isset($_POST['boton6'])){
exec('python /var/www/html/mover_arriba.py');
}
//Primera fila || mover_abajo.py
if(isset($_POST['boton7'])){
exec('python /var/www/html/mover_abajo.py');
}
?>
我想知道它是否可以在不使用 AJAX 或 JS 的情况下完成(解释的语言让我感到困惑),或者我是否可以修改此代码上的某些内容以实现我想要的。如您所见,我使用了表单,我真的不明白按钮是否可以在没有表单的情况下执行某些操作,为什么有时人们使用input="submit"
,我也看到了“ onclick=
”。请使用尽可能清晰的答案。
如果您还需要什么,请告诉我!
编辑:我忘了提到,如果我从中删除type="button"
它就<button type="button"
可以了。
解决方案
一种可能的解决方案是您可以让您的 PHP 代码将“假”值返回给表单。这将阻止页面刷新。这样,PHP 代码将调用 python 代码,但表单不会刷新,因为它从 PHP 函数接收到错误值。
推荐阅读
- nginx - “jrcs/letsencrypt-nginx-proxy-companion”泊坞窗图像:已经为确切的域集颁发了太多证书
- javascript - 动画以下轮播实现的最少步骤是什么?
- angular - 如何将对象推送到表单控件数组
- assembly - 使用 8086 组件制作矩形星形
- python - no NoSuchKey:调用GetObject操作时出错(NoSuchKey):指定的key不存在
- ios - 切换rootviewcontroller后导航控制器为nil
- ios - 我们可以在IOS设备上一次下载8gb的文件吗
- spring - Spring 集成 DefaultFtpsSessionFactory
- excel - 使用目标偏移清除excel中的一系列单元格
- angular - 自定义角度示意图极慢