Jquery 取2个Repeater嵌套 中textarea

来源:互联网 发布:淘宝客推广渠道 编辑:程序博客网 时间:2024/05/27 00:37

     最近在自己做类似人人的SNS  要实现说说的 评论回复功能,遇到了一个小问题,就是点回复时,文本框(Textarea)中自动添加,回复**,这就需要用jquery获取对应的textarea,第一开始的想法是动过 LinkButton( text=评论) 的位置关系来获取textarea,但是 由于是repeater嵌套,所以根据位置关系,prev,next,parent,children来获取,就比较复杂;然后就有了第二种想法,通过textarea的属性值来确定,这就得保证,该属性的唯一性,所以就用了绑定数据的主键,这就实现了...

 

前台的主要部分代码:

        <asp:Repeater ID="rptSign" runat="server" OnItemDataBound="rptSign_ItemDataBound"            OnItemCommand="rptSign_ItemCommand">            <HeaderTemplate>                <ul class="ul1">            </HeaderTemplate>            <ItemTemplate>                <asp:HiddenField ID="hdfSignID" runat="server" Value='<%#Eval("signID") %>' />                <li class="li1">                    <div class="divFloatLeft">                        <asp:Image ImageUrl='<%#Eval("imageURL") %>' AlternateText='<%#Eval("nickName") %>'                            CssClass="image40" runat="server" /></div>                       <a href="#"><%#Eval("nickName") %></a>   <%#Eval("signContent") %>                </li>                <li class="li1"><span class="span">                    <%#Eval("signTime") %>       评论(<%#Eval("commentCount") %>)    <asp:LinkButton                        ID="lkbtnDel" runat="server" Text="删除" CommandArgument='<%#Eval("signID") %>' CommandName="Delete"></asp:LinkButton></span>                </li>                <div style="clear: both;">                </div>                <li class="li1">                    <asp:Repeater ID="rptSignComments" runat="server" OnItemCommand="rptSignComments_ItemCommand">                        <HeaderTemplate>                            <ul>                                <li class="li1"></li>                        </HeaderTemplate>                        <ItemTemplate>                            <li class="li1">                                <div class="divFloatLeft">                                    <asp:Image ID="Image1" ImageUrl='<%#Eval("imageURL") %>' AlternateText='<%#Eval("nickName") %>'                                        CssClass="image40" runat="server" />                                </div>                                   <a href="#"><%#Eval("nickName") %></a>   <%#Eval("commentContent")%>                            </li>                            <li class="li1"><span class="span">                                <%#Eval("commentTime") %>       <a href='javascript:jump("<%#Eval("userID") %>","回复<%#Eval("nickName") %>:","<%#Eval("objID") %>")'>回复</a>    <asp:LinkButton                                    ID="lkbtnDel" runat="server" Text="删除" CommandName="Delete" CommandArgument='<%#Eval("commentID") %>'></asp:LinkButton></span>                            </li>                            <div style="clear: both;">                            </div>                        </ItemTemplate>                        <SeparatorTemplate>                            <hr />                        </SeparatorTemplate>                        <FooterTemplate>                            </ul>                        </FooterTemplate>                    </asp:Repeater>                    <br />                </li>                <li>                    <div id="weibo" style="text-align: right; margin: 10px;">                        <textarea style="width: 500px; scroll-x: hidden; height: 80px;" id="txtComment" runat="server" flag='<%#Eval("signID") %>'                            onkeypress="commentWordCountCheck(this);" onkeyup="commentWordCountCheck(this);"></textarea>                        <div>0/200</div>                        <asp:LinkButton                                    ID="lbntComment" runat="server" Text="评论" CommandName="Comment" CommandArgument='<%#Eval("signID") %>'></asp:LinkButton>                    </div>                    <br />                </li>            </ItemTemplate>            <SeparatorTemplate>                <hr />            </SeparatorTemplate>            <FooterTemplate>                </ul>            </FooterTemplate>        </asp:Repeater>

js部分:

        function jump(userID, nickName,obj) {            document.getElementById('<%=hdUserID.ClientID %>').value = userID;            $(":input[flag="+obj+"]").val(nickName);//            $(obj).parent().parent().next().next().next().next().children().children().val(nickName);//            alert($(obj).parent().parent().next().next().next().next().children().children().val());            location.href = "#select";        }



 运行效果:

原创粉丝点击