JQuery在ASP Gridview控件中显示/隐藏文本列

时间:2013-06-18 18:06:29

标签: jquery gridview

如果您能给我任何帮助和建议,我将不胜感激。我不是 我确定我会以正确的方式解决这个问题,但这是我的要求:

我有一个asp:gridview,可能在列中有大量的测试 每行中的字段。网格视图中不会对数据进行任何编辑。

我试图仅显示带有“.... [More]”的文本的前130个字符 文本的结尾。当用户点击[更多]时,<div>滚动打开 并且隐藏了短文本行,显示了整个文本和 [更多]文本更改为[更少]。当您点击[Less]时,<div>会关闭 向上,文本变回[更多]。我有简短的版本和 加载到模板字段的文本的长版本。

问题:我需要隐藏<asp:Label class="faq_submain">和。{ jQuery函数slideDown()完成后<span class="MemoDataMoreBtn">,和 当slideUp()完成时show()它们。我还需要隐藏[更多]链接 Eval(“MemoText”)长度小于或等于零。

以下是gridview <itemtemplate>

的代码
<ItemTemplate>
    <table cellpadding="0" cellspacing="0" class="GridMemo" width="100%">
        <tr>
            <td colspan="3" style="border-bottom: 1px solid #9DC2FF;">
                <asp:Label class="faq_submain" ID="ShortMemoTextLbl" runat="server" Text='<%# LimitTextLine(Eval("MemoText"), 130)%>'></asp:Label>
                <span class="MemoDataMoreBtn">[More]</span>
                <div class="memodatadiv" style="display: none;">
                    <asp:Label ID="LongMemoTextLbl" runat="server" Text='<%# Eval("MemoText")%>'></asp:Label>
                    <span class="MemoDataLessBtn">[Less]</span>
                </div>
            </td>
        </tr>
    </table>
</ItemTemplate>

这是我目前正在使用的jquery。

$(".MemoDataMoreBtn").click(function () {
    $(this).next(".memodatadiv").slideDown(100);
    $(this).prev(".faq_submain").hide();
});
$(".MemoDataLessBtn").click(function () {
    $(this).parent(".memodatadiv").slideUp(100);
    $(this).parent("td").after(".faq_submain").show();
});

这是如何看起来正常:

Normal

问题#1,我点击[更多],需要隐藏高位[更多]。 Problem #1

问题#2,点击[Less]后,我需要显示原始文本和[More]链接。 Problem #2

谢谢大家的帮助。

0 个答案:

没有答案