我想通过发送带有$ .ajax()的.js页面来获取php页面的价值;但我无法获得价值。我的错误在哪里?
这是我的functions.js
$(document).ready(function(){
$(".yeni_problem").click(function(){
var uid = 1;
$.ajax({
url: 'admin.php',
type: "post",
data: {'uid': uid},
success: function(data){
// $("#cvb").text(data);
},
statusCode: {
404: function(){
alert("admin.php not found");
}
}
});
});
});
这是我的php页面,我控制在这里发送值。
The Codes is large but i write small form. Which that when i run the small codes on other folders as other site it does't work.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>HELPDESK</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/css.css">
<link rel="stylesheet" href="css/default.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="css/icon.css">
</head>
<body>
<button class="yeni_problem">Yeni Problem</button>
<?php
if(isset($_POST['uid'])){
echo "Value:".$_POST['uid'];
}else{
echo "<hr>Value not found<br/>";
}
var_dump($_POST);
?>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="js.js"></script>
<script type="text/javascript" src="functions.js"></script>
<script type="text/javascript" src="bootstrap.min.js"></script>
<?php
echo "</body>
</html>";
?>
当我点击“.yeni_problem”课程时,我无法获得价值。
答案 0 :(得分:5)
1 - 检查你是否包括Jquery
第二 - 如果不检查其路径,请确保admin.php页面与您调用functions.js的文件在同一目录中
3 - 你传递uid而不是数据,所以在php中使用
<?php
if(isset($_POST['uid'])){
echo "Value:".$_POST['uid'];
}else{
echo "Value not found";
}
?>
第4:如果你用class="yeni_problem"
动态生成元素,那么使用
$('body').on('click',".yeni_problem", function(){
而不是
$(".yeni_problem").click(function(){
第五:如果yeni_problem
是提交按钮或锚点,那么您需要使用 e.preventDefault(); 来阻止重新加载页面
$(".yeni_problem").click(function(e){
e.preventDefault();
// rest of code here
第6期:如果yeni_problem
是表单,请使用 .submit()
$(".yeni_problem").submit(function(e){
e.preventDefault();
// rest of code here
答案 1 :(得分:0)
注意你的代码:在JS片段中,传递给服务器的参数是&#34; uid&#34;,这意味着你的服务器将获得一个标有&#位置的$_POST
数组34; UID&#34;
<?php
if(isset($_POST["uid"])){
echo "Value:".$_POST["uid"];
}else{
echo "Value not found";
}
?>
您还应该检查$_POST
变量中的内容,插入var_dump($_POST)
并注释掉其余代码。