我在我的网站上有一个收件箱部分,用户可以在其中单击主题标题以打开一个窗口并阅读其消息。
我放入了一个javascript函数,该函数突出显示收件箱中的消息,因为它们会移动光标。我已经使高亮显示为可单击的,并且它应该转到与用户单击主题链接相同的位置,并且转到窗口read_message.php时,它未加载消息ID,并且消息不会显示。
这是有效的主题链接:
<?php echo "<strong><a href=\"read_message.php?msg={$inbox['message_id']}\">{$inbox['subject']}</a></strong>"; ?>
和这里的JavaScript与链接不起作用:
<script>
$(function() {
$('tr').hover(function() {
$(this).css('background-color', '#eee');
$(this).contents('td').css({'border': '0px solid red', 'border-left': 'none', 'border-right': 'none'});
$(this).contents('td:first').css('border-left', '0px solid red');
$(this).contents('td:last').css('border-right', '0px solid red');
},
function() {
$(this).css('background-color', '#FFFFFF');
$(this).contents('td').css('border', 'none');
$('tr').click(function() {
document.location = "<?php echo "read_message.php?msg={$inbox[0]}" ?>";
} );
});
});
</script>
希望有人可以让我知道我要去哪里。谢谢。
最佳答案
首先,您应该移动.click()
函数,使其不在您的.hover()
函数内部-否则,每次将鼠标移出该行时,单击处理程序都会被设置,并且第一次将鼠标移到该行上时,该单击处理程序将不起作用。
完成后,您可以执行以下操作:
$("tr").click(function() {
location.href = $(this).find("a[href*='read_message.php']").attr("href");
});
(由于我并不真正使用jQuery,因此不能100%地确定
.find()
语法,但这应该会有所帮助)关于php - javascript中的链接?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13888742/