javascript - 使用Javascript onClick执行PHP函数而不刷新页面
问题描述
我的研究将我指向 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>
解决方案
您可以在提交之前使用 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() 函数停止表单提交,因此页面刷新。
推荐阅读
- javascript - forEach 函数以角度附加Child?
- java - Maven 配置文件无法获取 site.url
- javascript - 合并“行”并将有序“列”添加到对象数组
- api - 如何使用 Minitest 测试轮询外部 api?
- javascript - Lunr:加载索引时还需要多语言设置吗?
- matlab - matlab quiver3在z方向上绘制颜色渐变?
- angular-material - 导入主题的 css 无法解决材料错误
- php - 运行查询时出错 ['field list' 中的未知列 'song.songTitle']
- javascript - Google Maps JS API v.3.31 多标记渲染性能问题
- java - 创建地图
> 来自流