Php 为什么我的ajax函数不是';t异步并刷新页面?
我在这里试图做的是在我的页面上有一个按钮,它可以在不刷新页面的情况下提醒一些数据(数据是一个密码,这就是为什么我不希望将其写入代码中的原因) 到目前为止,我的实际页面运行良好, 页面的第一部分:Php 为什么我的ajax函数不是';t异步并刷新页面?,php,jquery,ajax,Php,Jquery,Ajax,我在这里试图做的是在我的页面上有一个按钮,它可以在不刷新页面的情况下提醒一些数据(数据是一个密码,这就是为什么我不希望将其写入代码中的原因) 到目前为止,我的实际页面运行良好, 页面的第一部分: <?php session_start(); if (!isset($_SESSION['id'])) header('location: index.php'); else { $id = strip_tags($_SESSION['id']); $username =
<?php
session_start();
if (!isset($_SESSION['id']))
header('location: index.php');
else
{
$id = strip_tags($_SESSION['id']);
$username = strip_tags($_SESSION['username']);
$role = strip_tags($_SESSION['role']);
require('config/functions.php');
if (isset($_POST['idSite']) AND !empty($_POST['idSite'])) {
$idSite = htmlspecialchars($_POST['idSite']);
$connexionInfos = getConnexionInfos($idSite);
}
}?>
第二部分:
<!DOCTYPE html>
<html>
<head>
<title>Telem MCS</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#passCo").click(function(){
var idTelem = <?= $idSite ?>;
$.post("config/get_pass.php",
{
searchFor: idTelem
},
function(data,status){
alert("Password: " + data);
});
});
});
</script>
</head>
<body>
<div class="tabs_content">
<div class="tab_content" id="connexion">
<div class="form_info">
<form>
<div id="except_procedure">
<?php foreach($connexionInfos as $connexionInfo): ?>
<div class="form-style-2">
<label for="field1"><span>Type de connexion </span>
<select name="field1" class="select-field" disabled="disabled">
<option value=""><?= $connexionInfo->TYPECONNEXION ?></option>
</select>
</label>
<label for="field2"><span>Configuration VM </span>
<input type="text" class="input-field" name="field2" value="<?= $connexionInfo->TYPEVM ?>" disabled="disabled"/>
</label>
<?php endforeach; ?>
<label for="field5"><span>PASSWORDS</span>
<button id="passCo">PASS</button>
</label>
</div>
<?php foreach($connexionInfos as $connexionInfo): ?>
<div class="form-style-2">
<label for="field6"><span>Procedure </span>
<textarea name="field6" class="textarea-field" disabled="disabled"><?= $connexionInfo->PROCEDURE ?></textarea>
</label>
</div>
<?php endforeach; ?>
</div>
</form>
</div>
</div>
</div>
</body>
远程监控系统
$(文档).ready(函数(){
$(“#passCo”)。单击(函数(){
var idTelem=;
$.post(“config/get\u pass.php”,
{
搜索:idtelm
},
功能(数据、状态){
警报(“密码:+数据”);
});
});
});
脱连接型
配置虚拟机
因为元素的默认类型是“submit”
,所以浏览器正在提交表单
要防止它,请接受事件对象作为单击处理程序中的第一个参数,并对其调用preventDefault
:
$("#passCo").click(function(e){
e.preventDefault();
// ...
});
或者,您可以将type=“button”
添加到按钮
,但该按钮在关闭JavaScript的浏览器上不起作用。(我不知道你是否在处理这个案子,但是…旁注:我希望你不会认为strip\u tags()
有助于防止SQL注入;不会的。使用预先准备好的语句,因为您已经在使用PDO。编辑:同样的事情也适用于htmlspecialchars()
。如果你的循环不止一次,你也有多个ID-ID必须是唯一的htmlspecialchars()会更好吗?@JonathanBlt看不到我编辑的评论;重新加载它。同样的事情;-)如何预防。最好使用“$”(“表单”)。在(“提交…”上,而不是“.submitbutton”)。在(“单击”
@mplungjan-Hmmm),很可能是的。
$("#passCo").click(function(e){
e.preventDefault();
// ...
});