我有这个链接:
<a id='delete' href='/add/delete.php?iid=XXXXX'>#</a>
我想通过 Jquery 传递它,这样页面就不会刷新。但是,我很难做到这一点。我用 Jquery 尝试过的所有点击事件和 ajax 都没有成功。
基本上,我希望 ajax 向 delete.php 发送 iid 参数中的值。
$(function(){
$("#delete").click(function(e){
e.preventDefault();
$.post("../add/delete.php", { iid: "xxx" } ,function(data){
//do whatever with the result which is in the variable data.
alert(data)
});
});
});
由于是删除,所以使用 POST。否则一些爬虫会爬取你的删除页面,你会在一个晴朗的早晨看到你的表是空的。
编辑:您可以以某种方式将要传递的值与锚标记相关联。例如:将您的 id 标签更改为这种格式 del-YouIdTobe 已删除(例如:del-1、del-2 等)
<a id='delete' href='#' id="del-1>Delte 1 </a>
<a id='delete' href='#' id="del-2>Delte 2 </a>
<a id='delete' href='#' id="del-3>Delte 3 </a>
脚本
$(function(){
$("#delete").click(function(e){
e.preventDefault();
var val=$(this).attr("id").split("-")[0];
$.post("../add/delete.php", { iid: val } ,function(data){
//do whatever with the result which is in the variable data.
alert(data)
});
});
});
在这里试试这个href='1'
是你要删除的id,也可以替换它找到的文本id="d1"
:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function(){
$(".delete").click(function(e){
var del_id = $(this).attr('href');
e.preventDefault();
$.post("/add/delete.php", { iid: del_id } ,function(data){
//change the link to deleted
$('#d'+del_id).replaceWith('<a href="#">Deleted</a>');
});
});
});
</script>
</head>
<body>
<a class='delete' id="d1" href='1'>Delete</a>
<a class='delete' id="d2" href='2'>Delete</a>
<a class='delete' id="d3" href='3'>Delete</a>
<a class='delete' id="d4" href='4'>Delete</a>
</body>
</html>