我想将id发送到php脚本。我想我的代码没问题,但是当我点击标签时我得到了这个错误:
Notice: Undefined index: id in C:\xampp\htdocs\domaci\cao.php on line 4
这是我的html + ajax代码:
<html>
<head>
<script type="text/javascript" src="jquery-1.11.1.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$('a').click(function(){
$.post($(this).attr('href'), { id : $(this).attr('id') } );
});
});
</script>
</head>
<body>
<a href="cao.php" id="Barselona" >Barselona</a>
</br>
<a href="cao.php" id="Beograd" >Beograd</a>
</body>
</html>
这是cao.php:
<html>
<body>
<?php
$id = $_POST['id'];
echo $id;
?>
</body>
</html>
我真的需要这个去上班,请帮帮我:)。
答案 0 :(得分:1)
你的$.post
ajax很好。问题是,当单击锚点时,您不会阻止默认或返回false,以阻止浏览器重定向到cao.php
。当它重定向到cao.php
时,它是一个GET请求,因此触发未定义的索引通知,因为没有发布数据。
添加return false或preventDefault:
$('a').click(function(e){
e.preventDefault();
$.post($(this).attr('href'), { id : $(this).attr('id') } );
});
查看“网络”标签上的浏览器控制台(F12),查看ajax的响应。
答案 1 :(得分:0)
立即尝试。
$(document).ready(function(){
$('a').click(function(){
$.post($(this).attr('data-url'), { id : $(this).attr('id') } );
});
});
</script>
</head>
<body>
<a href="#" data-url="cao.php" id="Barselona" >Barselona</a>
</br>
<a href="#" data-url="cao.php" id="Beograd" >Beograd</a>
</body>
</html>
答案 2 :(得分:0)
答案 3 :(得分:0)
试试这个会对你有用:
<html>
<head>
<script type="text/javascript" src="jquery-1.11.1.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$('a').click(function(){
$.post('cao.php', { id : $(this).attr('id') },function(data){
alert(data);
});
});
});
</script>
</head>
<body>
<a href="#" id="Barselona" >Barselona</a>
</br>
<a href="#" id="Beograd" >Beograd</a>
</body>
</html>
AT cao.php页面
<?php
$id = $_POST['id'];
echo $id;die;
?>
答案 4 :(得分:0)
在cao.php&amp;中尝试print_r($ _ POST)检查值是否发布
$id=$_POST["id"];