2 lamzyc lamzyc 于 2015.06.02 17:08 提问

如何控制Repeater里面的项目?
<table style="width: 850px" class="Tbl_solid" style="background-color: white;" border="0"
                cellspacing="0" cellpadding="0" >
                <asp:Repeater ID="rptList" runat="server">
                    <ItemTemplate>
                        <tr id="" align="center">
                            <td align="center" id="td_KENSYU_MEI_KJ" runat="server" visible="false" >
                                <input id="Name" type="text" onfocus="rowSelect(this)" onkeyup="changeText()" runat="server"
                                    value='<%#Eval("KENSYU_MEI_KJ") %>' style="width: 99%; text-align: left; height: 18px;" />
                            </td>
                            <td align="center" id="td_JOBNO" runat="server" visible="false">
                                <input id="txt_JOBNO" type="text" onfocus="rowSelect(this)" onkeyup="changeText()" runat="server"
                                    value='<%#Eval("JOBNO") %>' style="width: 99%; text-align: left; height: 18px;" />
                            </td>
                            <td align="center" id="td_JIKAN_SU" runat="server" visible="false">
                                <input id="txt_JIKAN_SU" type="text" onfocus="rowSelect(this)" onkeyup="changeText()" runat="server"
                                    value='<%#Eval("JIKAN_SU") %>' style="width: 99%; text-align: left; height: 18px;" />
                            </td>
                            <td align="center" id="td_SYUKAN_MEI_KJ" runat="server" visible="false">
                                <input id="txt_SYUKAN_MEI_KJ3" type="text" onfocus="rowSelect(this)" onkeyup="changeText()" runat="server"
                                    value='<%#Eval("SYUKAN_MEI_KJ") %>' style="width: 99%; text-align: left; height: 18px;" />
                            </td>
                            <td align="center" id="td_YOUSI_NAIYO" runat="server" visible="false">
                                <input id="Theme" type="text" onfocus="rowSelect(this)" runat="server" value='<%#Eval("YOUSI_NAIYO") %>'
                                    style="width: 99%; text-align: left; height: 18px;" />
                            </td>
                            <td align="left" id="td_STA_YMD" runat="server" visible="false">
                                <input id="DateFrom" type="text" runat="server" value='<%#Eval("STA_YMD") %>' class="Wdate"
                                    onfocus="WdatePicker(),rowSelect(this)" style="width: 99%; text-align: center;" />
                            </td>
                            <td align="left" id="td_END_YMD" runat="server" visible="false">
                                <input id="DateTo" type="text" runat="server" value='<%#Eval("END_YMD") %>' class="Wdate"
                                    onfocus="WdatePicker(),rowSelect(this)" style="width: 99%; text-align: center;" />
                            </td>
                            <td style="display: none">
                                <asp:HiddenField ID="HFKensyuSeq" runat="server" Value='<%#Eval("CPD_KENSYU_SEQ") %>' />
                            </td>
                            <td style="display: none">
                                <asp:HiddenField ID="HFJobSeq" runat="server" Value='<%#Eval("JOB_SEQ") %>' />
                            </td>
                            <td style="display: none">
                                <asp:HiddenField ID="HFSortId" runat="server" Value='<%#Eval("SORT_ID") %>' />
                            </td>
                            <td style="display: none">
                                <asp:HiddenField ID="HFExistFlg" runat="server" Value='<%#Eval("EXIST_FLG") %>' />
                            </td>
                             <td style="display: none">
                                <asp:HiddenField ID="HFJobNo" runat="server" Value='<%#Eval("JOBNO") %>' />
                            </td>
                        </tr>
                    </ItemTemplate>
                    <FooterTemplate>
                    </FooterTemplate>
                </asp:Repeater>
            </table>



代码大约是这样,我想从后台控制table的某几列的显示和隐藏,但是Repeater里的td的id后台获取不到

3个回答

showbo
showbo   Ds   Rxr 2015.06.02 17:39
已采纳

添加OnItemDataBound事件获取td进行显示隐藏

 <asp:Repeater ID="rptList" runat="server" OnItemDataBound="TdOp">

    protected void TdOp(object sender, RepeaterItemEventArgs e)
    {
        HtmlTableCell c = e.Item.FindControl("td_KENSYU_MEI_KJ") as HtmlTableCell;
        Response.Write(c == null);
        if (c != null /*&& 你的条件*/) c.Visible = true;
        //....其他的td
    }
lamzyc
lamzyc 谢谢啦,这个确实好用
2 年多之前 回复
lamzyc
lamzyc 谢谢,这个看起来能用,我吃完饭试试
2 年多之前 回复
caozhy
caozhy   Ds   Rxr 2015.06.02 17:10

直接把你里面的项目绑定给一个服务器变量即可

lamzyc
lamzyc 呃……抱歉没理解你的意思
2 年多之前 回复
sjzquchen
sjzquchen   2015.06.03 09:08

楼主 试过了吗? 刚看到帖子 我也正好适用! 但是出现问题了 前台页面 莫名奇妙的 出现了 true 或者 false 的 异常代码 出现在了页面的开头 导致页面崩了!图片说明 后台是这样的 图片说明

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!