单击按钮时如何触发PHP / jQuery [重复]

Posted

技术标签:

【中文标题】单击按钮时如何触发PHP / jQuery [重复]【英文标题】:How to trigger PHP/jQuery when a button is clicked [duplicate] 【发布时间】:2012-07-28 18:28:17 【问题描述】:

我有以下表格:

html

<form id="myForm" action="" method="post">
<div id="edit-box">
<INPUT type="submit" name="save-text" id="save-text" value="Save">
<textarea id="editor" name="editor">
<?php echo $content; ?>
</textarea>
</div>
</form>

PHP

if ($_POST["save-text"])
    // get form data and do stuff here

如何确保 PHP 脚本仅在单击提交按钮时运行,而在其他时间不运行?

【问题讨论】:

您当前的代码有什么问题吗? 是的..它什么也没做。我想根据表单内的按钮 id 触发 php。你能告诉我该怎么做吗? 只需在action 中填写您的php 路径即可。 action="path/filename.php" 当您检查表单是否已提交if (isset($_POST['save-text'])) 时,可能想要使用isset()。还可以尝试通过在 if 语句中输入 echo 'submitted'; 来调试它,以检查它是否被提交。 @user21472 什么对你有用?填写action 还是使用isset() ?让我们知道,以便我们中的一个人将其写下来作为您接受的答案。 【参考方案1】:

在页面开头的 HTML 标记之前添加它。 另外不要忘记将页面扩展名从.html更改为.php

if (isset($_POST['save-text'])) 
    // get form data and do stuff here

【讨论】:

【参考方案2】:

问题是if($_POST["save-text"]) 返回 false,因此您的代码没有被执行。您需要用isset() 函数包装$_POST["save-text"]。 isset() 可用于检查某个变量是否存在,如果变量存在且其值为NULLFALSE 以外的值,则返回TRUE

正确的代码如下所示:

if (isset($_POST['save-text'])) 
    //Do something

您还应该确保您的提交按钮具有“值”属性。如果没有,$_POST 数组中不会有值,因此 isset($_POST["submit"]) 将返回 false。

例子:

<input type="submit" name="submit">

isset($_POST["submit"])   // returns false

<input type="submit" name="submit" value="submit">

isset($_POST["submit"])   // returns true.

【讨论】:

以上是关于单击按钮时如何触发PHP / jQuery [重复]的主要内容,如果未能解决你的问题,请参考以下文章

jQuery - 找出触发事件的原因[重复]

当我单击触发它显示的链接时,如何触发 Spotify 播放按钮播放?

单击“重力形式”输入按钮时触发 jquery

JQuery getJson 成功函数在按钮单击时触发

使用Jquery和PHP单击保存按钮时如何将多个表行更新为mysql表?

除了单击按钮之外,如何在 jQuery 中触发模糊?