使用Javascript onClick执行PHP功能而无需刷新页面

时间:2019-02-19 20:17:00

标签: javascript php jquery

我的研究将我指向Ajax和/或JQuery,但我想问一下以确保我理解并朝着正确的方向发展。

我一直在寻找使用javascript onclick函数来创建一个弹出窗口(警告),要求确认我要继续并显示我将要进行的更改。

我希望我可以使用PHP $ _POST或GET来回显弹出/警告窗口中的更改。但是,如果没有刷新页面,看来我无法执行此操作,但需要确认吗?我应该在寻找Ajax来做到这一点吗?任何想法/建议都可能使我先入为主,因为php / ajax对我来说有点陌生。

示例代码:

<script>     
function clicked() {
    if (confirm('Do you want to submit? <?php if(isset($_POST['city'])){$city = $_POST['city'];echo $city;}?>')) 
    {
        yourformelement.submit();
    } else {
        return false;
    }
}
</script>
</head>
<form action="output.php" method="post">
  <input name="city">

<input type="submit" onclick="clicked();" value="Button" />
 </form>

</html>

1 个答案:

答案 0 :(得分:1)

您可以在提交之前使用jQuery获取输入值:

<form action="output.php" method="post" id="form">
    <input name="city" id="city_input">
    <input type="submit" value="Button" />
</form>
<script>     
    $('#form').submit(function(e) {
        e.preventDefault();
        let cityInputVal = $('#city_input').val();
        if (confirm('Do you want to submit ' + cityInputVal + '?')) 
        {
            this.submit();
        } else {
            return false;
        }
    });
</script>

preventDefault()函数停止表单提交,因此将刷新页面。