jQuery / Colorbox - 将一个变量传递给<div id =“inline_content”> </div>

时间:2012-04-13 20:22:21

标签: jquery colorbox

我对jQuery一无所知,并且一直试图让这个持续一周以上。看起来我需要专业的建议。在我们的教堂网站上,我们有一个包含成员出生日期的页面。如果我可以将成员id号放入inline_content块中,我可以通过一些引用获得我需要的所有数据。防爆。 $ MEMBERID = $ _ REQUEST [ 'MEMBERID'];这是我正在使用的:

blanknew.php(页面标题)

很多PHP代码


  link rel =“stylesheet”href =“_ css / colorbox.css”   script src =“https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js”/ script&gt;   script src =“_ js / jquery.colorbox.js”/ script&gt;   脚本       $(文件)。就绪(函数(){           $(“。inline”)。colorbox({inline:true,href:“#inline_content”,width:“300px”});       });   /脚本
/头

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

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>

我不懒,但我不知道从哪里开始。如果有人能给我我需要的代码以及确切的位置,我将非常感激。 (我不能说我的代码自动格式化给我留下了深刻的印象 - 它已经足够糟糕了)

1 个答案:

答案 0 :(得分:1)

我不完全确定你可以得到什么,或者你的目标是什么,但这里有一些想法。

如果它们包含在$(document).ready()函数中,您可以将这样的脚本函数放在页面顶部。你想要做的是将成员ID放入你展示的div中。您可以为页面上的每个成员设置一个事件,以便在您将其“成员ID”存储在任何位置时单击它们可以显示在您的内联内容中。 (您的意思是使用display:none隐藏内联内容吗?您可以将其应用于具有相同结果的内部div - 如果填充了$_REQUEST['memberid'],则在{{1}时您将看不到它除非你有一个改变那个属性的动作,否则就有了。)

这是一个可能适合您的想法:

display:none

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

<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>

修改

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

要访问此人的链接ID,只需询问ID:

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

$(this).attr("id"); 根据具体情况而变化。我假设您正在使用链接$(this)进行操作。此时,$(this)指的是点击的超链接。

要访问该名称,只需要输入html();这将获得开头和结束之间的内容

$(".memberid").click(function() {

把它们放在一起,

$(this).html();

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

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

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

删除仅包含<a href="#inline_content" id=...></a> 的脚本标记,这些标记不是我打算使用该信息的方式。

当您改变背面时,您应该会再次看到彩色框。