【发布时间】:2010-11-23 22:42:37
【问题描述】:
如何检索给定链接的 rel 属性值并将其传递给处理程序?
我有一个这样的链接列表
链接列表
<div id='one_answer'>Answer1
<a href="$" class="delete_answer" rel='Answer1'>delete</a>
</div>
<div id='one_answer'>Answer2
<a href="$" class="delete_answer" rel='Answer2'>delete</a>
</div>
<div id='one_answer'>Answer3
<a href="$" class="delete_answer" rel='Answer3'>delete</a>
</div>
这些链接由以下代码生成。 rel 的以下值似乎没有传递给处理程序。
PHP 生成的链接
echo ($answer . "<a href='#'"
. "class='delete_answer'"
. " rel='" . $body . "'" // I identify the answer
// by the body of the answer
// in the database
. ">delete</a>"
);
用户点击第二个链接。 rel 属性应该将答案传递给处理程序。 jQuery 应该根据 POST 数据执行以下操作。
jQuery
jQuery('a.delete_answer').live('click', function(){
jQuery.post('/codes/handlers/delete_an_answer.php',
{ delete_answer: jQuery(this).attr('rel') },
function(){
$("#one_answer").removeClass("yellow");
})
});
文件 delete_an_answer.php
$dbconn = pg_connect("host=localhost port=5432 dbname=masi user=masi password=123");
// remove the answer
$result = pg_query_params ( $dbconn,
'DELETE FROM answers
WHERE answer = $1',
array ($_POST['answer'] ) // Problem here, because
// $_POST['answer'] is empty when it gets here
// so no answer is deleted
);
我从 Postgres 获取答案,同时将 rel 属性的值设为 $body。
【问题讨论】:
-
您可能应该解释一下问题是什么......“这里的问题”并没有说太多。您编写的代码应该“工作”,只要它将检索
rel属性的值并将其传递给您的处理程序......如果您只想要被点击的链接的索引,我'我不确定问题的其余部分是关于什么的。