我对ajax或jquery还不太了解,但我目前有一个ajax脚本,它成功发送了一个变量,并且运行正常。
- 我设置的方式就像我的循环一样:
<?php
$tt= mysql_query("SELECT * FROM monsters");
while ($row= mysql_fetch_array($tt))
{
$namee= $row['name'];
echo "<a id='namee' onclick='post();'>$namee</a>", "</br>";
}
回声:
horseman
dragon
---结果确实列出了如上所示的表格中的所有名称,它们是可点击的,效果很好
我的ajax请求是:
<script type="text/javascript">
function post(){
var hr = new XMLHttpRequest();
var url = "mess.php";
var vars =document.getElementById("namee").innerHTML;
hr.open("POST", url, true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function() {
if(hr.readyState == 4 && hr.status == 200) {
var return_data = hr.responseText;
document.getElementById("new").innerHTML = return_data;
}
}
hr.send(vars); // Actually execute the request
alert(vars);
}
</script>
当我点击骑士返回“骑士”时的警报
但是当我点击龙时它仍然警告“骑士”
我想得到特定的变量(当我点击骑士它说骑士,当我点击龙它说龙等)所以我可以通过ajax发送它来更新数据库(我已经知道设置)
请帮助我,告诉我你是否可以完整编码,这样我就可以学习并了解它是如何工作的,并了解你的反应,因为我是新的,就像我说的那样:)
提前谢谢:答案 0 :(得分:0)
多数民众赞成因为id应该是唯一的,jquery只会获得带有该id的第一个元素,我的建议是通过参数传递值:
echo "<a class='namee' onclick='post($namee);'>$namee</a>", "</br>";
然后是js:
function post(vars) {
var hr = new XMLHttpRequest();
var url = "mess.php";
hr.open("POST", url, true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function () {
if (hr.readyState == 4 && hr.status == 200) {
var return_data = hr.responseText;
document.getElementById("new").innerHTML = return_data;
}
}
hr.send(vars); // Actually execute the request
alert(vars);
}