0

我对 jQuery 一无所知,并且已经尝试了一个多星期。看来我需要专业的建议。在我们的教会网站上,我们有一个包含成员生日的页面。如果我可以将成员 ID 号放入 inline_content 块中,我可以通过一些参考获得我需要的所有数据。前任。$memberid=$_REQUEST['memberid']; 这是我正在使用的:

blanknew.php(页面标题)

大量的PHP代码


链接 rel="stylesheet" href="_css/colorbox.css" script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" /script> script src="_js/jquery.colorbox.js" /script> 脚本 $(document).ready(function(){ $(".inline").colorbox({inline:true, href:"#inline_content", width: "300px"}); }); /script
/head

body
这里我有一个包含成员名称(和成员 ID)的表

td nowrap="nowrap" align="left" a class="inline" href="#inline_content?memberid=' . $ID .'"' 。$fname 。'/a /td; (我很确定这是错误的)

<div style='display:none'>
    <div id='inline_content' style='padding:10px; background:#fff;'>
      <?php 
echo $_REQUEST['memberid']; (this gives me nothing)
?> 
      </div>
</div>

我并不懒惰,但我只是不知道从哪里开始。如果有人能给我我需要的代码以及确切的放置位置,我将不胜感激。(我不能说我对代码的自动格式化印象深刻——这已经够糟糕了)

4

1 回答 1

1

我不完全确定您可以使用什么或您的最终目标是什么,但这里有一些我的想法。

如果它们包含在$(document).ready()函数中,您可以将这样的脚本函数放在页面顶部。听起来您想要做的是将成员 ID 放入您显示的 div 中。您可以为页面上的每个成员设置一个事件,这样当他们被点击时,无论您存储了他们的“成员 ID”,都可以显示在您的内联内容中。(您的意思是用 隐藏内联内容display:none吗?您可以将其应用于内部 div 并具有相同的结果 - 如果$_REQUEST['memberid']已填充,display:none除非您有更改该属性的操作,否则您将看不到它。)

这是一个可能对您有用的想法:

<script>
    $(document).ready(function() {
       // Specify a class for all your members and then 
       $(".some_clickable_element_with_member_id").click(function() {
           $("#inline_content").html( $(this).attr("id") );
           return false; // if you don't want the click to go anywhere (assuming you're using an <a> tag.
       });
    });
</script>

您是否尝试设置一个表格,以便您希望通过超链接传递到后续页面的成员 ID 的隐藏属性?你不需要 jQuery。您可以在 php 中使用 memberid 作为目标页面的查询字符串的一部分来构建链接。例如:

<a href="processThisMember.php?member_id=<?php echo $id; ?>">
    <?php echo $fname; ?>
</a>

编辑

在尝试集成插件之前,您可能希望等待对 jQuery 和 HTML 更加熟悉。阅读有关选择器操作的 jQuery 文档,一旦您了解或部分吸收了如何查找元素并对其进行操作,您将能够更好地解决这个问题和未来的场景。

要为您的链接访问此人的 id,只需询问 id:

$(this).attr("id");

$(this)根据上下文变化。我假设您正在对链接进行操作$(".memberid").click(function() {。此时,$(this) 指的是被点击的超链接。

要访问名称,只需请求 html(); 这将获取开头和结尾之间的内容

$(this).html();

把这一切放在一起,

$("#inline_content").html( $(this).attr("id") + " " + $(this).html() );

我不熟悉颜色框,所以我不知道您应该或应该如何将值传递给它。我建议给出 # 的 href,但看起来就是颜色框被激活的方式。将链接更改回 href

<a href="#inline_content" id=...></a>

将课程和 id 留在那里,希望您能够接受这些想法并产生您正在寻找的行为。当你问这个问题时,你仍然有可能留下关于你如何拥有它的href,但希望这会让你到达你想去的地方。一次改变一件事并观察行为如何变化。

$("#inline_content").html();删除仅包含我不打算让您使用该信息的脚本标签。

当您更改背面时,您应该会再次看到您的颜色框弹出。

于 2012-04-13T20:45:28.137 回答