在转发器控件中设置子标签属性

时间:2013-09-01 07:41:06

标签: javascript css repeater onmouseover onmouseout

我有一个转发器控件来显示用户评论。注释保存在div标签中,在div标签内,还有其他标签。我将悬停属性分配给父标记,以便在鼠标悬停时显示子div标签。当我运行代码时,hover属性仅适用于转发器中的第一个注释。如果将鼠标保留在其他注释上,则hover属性将再次用于第一个注释。这是我的HTML代码 `

        <ItemTemplate>

        <div id="divComnt" class="Dcomment span9" onmouseover="MouseOver_Comment()" onmouseout="MouseOut_Comment()">  
               <div class="date" >Posted at <%#Eval("DateAdded")%></div>
               <br/>
               <p><%# Eval("Comment") %> </p>
               <br/>
                <%--reply buttons--%>
                <div id="Div_replyLinks" class="bottom pull-left replyLink" style="margin:3px 1px 3px 1px">

                <a href="#" title="Katılıyorum"><i class=" icon-thumbs-up"></i> </a>
                <a href="#" title="Katılmıyorum"><i class=" icon-thumbs-down"></i> </a>
                <a href="#" title="Bence..."><i class="icon-comment"></i> </a>

              </div>
            </div>
            </ItemTemplate>

            </asp:Repeater>`

这是javascript

function MouseOut_Comment() {
        var div = document.getElementById("Div_replyLinks");
        div.style.visibility = 'hidden';
    }
    function MouseOver_Comment() {

        var div = document.getElementById("Div_replyLinks").;
        div.style.visibility = 'visible';
    }

这里有link视觉辅助。(不幸的是,由于缺乏声誉,我无法上传图片) 正如您在图像中看到的那样,活动注释div是第二个,但回复按钮图标在第一个中可见。

1 个答案:

答案 0 :(得分:0)

好的,我找到了解决问题的方法。我使用了&lt;%#Container.ItemIndex%&gt;作为我想要改变的可见性属性的div的id值。然后发送&lt;%#Container.ItemIndex%&gt;作为java函数的参数

这是代码

<asp:Repeater ID="RptComments" runat="server"  >   

        <ItemTemplate>

        <div id="DivComnt" class="Dcomment span9" onmouseover="MouseOver_Comment('<%#Container.ItemIndex%>')" onmouseout="MouseOut_Comment('<%#Container.ItemIndex%>')">  
               <div class="date" >Posted at <%#Eval("DateAdded")%></div>
               <br />
               <p style="margin:2px 5px 2px 5px"><%# Eval("Comment") %> </p>
               <br />
               <%--reply buttons--%>
               <div id="<%#Container.ItemIndex%>" class="bottom pull-right replyLink" style="margin:3px 1px 3px 1px">
                <a href="#" title="Katılıyorum"><i class=" icon-thumbs-up"></i></a>
                <a href="#" title="Katılmıyorum"><i class=" icon-thumbs-down"></i></a>
                <a href="#" title="Bence..."><i class="icon-comment"></i></a>
              </div>
            </div>
            </ItemTemplate>
            </asp:Repeater>

这是java代码:

function MouseOver_Comment(id) {
        var div = document.getElementById(id);
        div.style.visibility = 'visible';               
    }
    function MouseOut_Comment(id) {
        var div = document.getElementById(id);
        div.style.visibility = 'hidden';
    }