【发布时间】:2010-01-18 04:56:43
【问题描述】:
我有一个这样的联系人列表。
NameOfContact Accept
NameOfContact2 Accept
......
“接受”是一个链接。 当我单击“接受”时,我想发送一个带有联系人 ID 的 ajax 请求。 当 ajax 调用返回时,它应该删除 Accept 链接并在那里显示结果。
所以如果我点击联系人 2 的接受按钮,结果应该是:
NameOfContact Accept
NameOfContact2 Added
......
我使用友好的网址,例如,接受联系人的网址是:
/action/accept/12345
其中 12345 是联系人 ID。
我的 html 是这样的(我在服务器端动态生成 html 这就是结果的样子):
John
<div id="choice">
<a id="accept" name="accept" href='/action/accept/12345'>Accept</a>
</div>
Kate
<div id="choice">
<a id="accept" name="accept" href='/action/accept/55555'>Accept</a>
</div>
而我的 Jquery 是这样的:
$(document).ready(function(){
$('#accept').click(function(e){
e.preventDefault();
sendAcceptRequest(e.target, e);
});
});
function sendAcceptRequest(target, e){
$.post(target,
function(data){
$('#choice').html(data);
}, "html");
}
我的问题是我不知道如何区分许多选择 div。我知道我可以 添加这样的 id 'choice12345' 但我想在 sendAcceptRequest 函数中获取 e 的父级(href 的父级,即 div 元素)并将结果附加到该 div,但我不知道如何获取e 的父级并将结果附加到它。有什么想法吗?
【问题讨论】:
-
与您的问题无关的一件事是您不应该使用 GET 请求来修改数据(如您的网址中暗示我可以将浏览器指向 /acction/accept/1234 网址和数据库将被修改)您应该对修改数据的查询使用 POST 动词