【问题标题】:Unable to set width inside ASP repeater无法在 ASP 中继器内设置宽度
【发布时间】:2016-11-11 06:49:37
【问题描述】:

我在下面有带有表 tr 和 td 的中继器,我已经为它们分配了宽度,但这不起作用。我已经尝试过 px 和 % 在我的情况下都不起作用。

 <div style="padding: 3px;">
                    <asp:Repeater ID="rptIncrementalInt" runat="server" Visible="true" OnItemDataBound="rptIncrementalInt_ItemDataBound">
                        <HeaderTemplate>
                            <table cellpadding="0" cellspacing="1" class="ey-dataTable">
                                <tbody style="background-color: white">
                                    <tr class="Heading">
                                        <td class="ey-formlabel1 AlignedRow" style="width: 5% !Important;" rowspan="2">Company Group</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 50px;" rowspan="2">Entity</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 50px;" rowspan="2">Category</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 40px;" rowspan="2">Legislation</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 40px;" rowspan="2">Nature of Proceeding</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px" rowspan="2">Interest Type</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 40px;" rowspan="2">Section</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Rate (%)</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 40px;" rowspan="2">Mode of interest computation</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Start Date Type</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Start Date dd-mmm-yy</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 40px;" rowspan="2">End Date dd-mmm-yy</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Adjustment for part of the month</td>

                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">No. of days in a month</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">No. of days in a year</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Amount on which Int to be computed</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Net Amount</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 90px;" colspan="3">Break-up, if available</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Interest compounded on</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 60px;" colspan="2">Period</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;" rowspan="2">Interest</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 90px;" colspan="3">Existing Open Issues</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 90px;" colspan="3">Risk Apportionment</td>
                                    </tr>
                                    <tr class="Heading AlignedRow">
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px">Base Exposure</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px">Interest</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px">Penalty</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px">Month</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px">Days</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Probable</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Possible</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Remote</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Probable</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Possible</td>
                                        <td class="ey-formlabel1 AlignedRow" style="width: 30px;">Remote</td>
                                    </tr>
                        </HeaderTemplate>
                        <ItemTemplate>
                            <tr>
                                <td class="ey-formlabel1" style="width: 50px;"><%# DataBinder.Eval(Container.DataItem, "CGroupName") %>
                                    <asp:HiddenField ID="hiddMainProceedingId" runat="server" Value='<%#DataBinder.Eval(Container.DataItem,"MainProceedingId") %>' />
                                    <asp:HiddenField ID="hiddRowIndex" runat="server" Value='<%#DataBinder.Eval(Container.DataItem,"RoWID") %>' />
                                    <asp:HiddenField ID="hiddInterestCalcId" runat="server" Value='<%#DataBinder.Eval(Container.DataItem,"InterestCalcId") %>' />
                                </td>
                                <td class="ey-formlabel1" style="width: 50px;"><%# DataBinder.Eval(Container.DataItem, "EntityName") %></td>
                                <td class="ey-formlabel1" style="width: 50px;"><%# DataBinder.Eval(Container.DataItem, "Category") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "Legislation") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "NOP") %></td>
                                <td class="ey-formlabel1" style="width: 30px;">
                                    <%# DataBinder.Eval(Container.DataItem, "InterestType") %>
                                    <asp:HiddenField ID="hiddInterestTypeID" runat="server" Value='<%#DataBinder.Eval(Container.DataItem,"InterestTypeID") %>' />
                                </td>
                                <td class="ey-formlabel1" style="width: 40px;">
                                    <%# DataBinder.Eval(Container.DataItem, "SectionRef") %>
                                    <asp:HiddenField ID="hiddSecRefID" runat="server" Value='<%#DataBinder.Eval(Container.DataItem,"SectionRefID") %>' />
                                </td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "IntRate") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "IntModeComputation") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "StartDateType") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "StartDate") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "EndDate") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "AdjPartOfMonth") %></td>

                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "NoOfDaysMonths") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "NoOfDaysYr") %></td>
                                <td class="ey-formlabel1" style="width: 40px;"><%# DataBinder.Eval(Container.DataItem, "AmtIntComputatedOn") %></td>
                                <td class="ey-formlabel1" style="text-align: right; width: 30px;"><%# DataBinder.Eval(Container.DataItem, "NetAmt") %></td>
                                <td class="ey-formlabel1" style="text-align: right; width: 30px;"><%# DataBinder.Eval(Container.DataItem, "DutyAmt") %></td>
                                <td class="ey-formlabel1" style="text-align: right; width: 30px;"><%# DataBinder.Eval(Container.DataItem, "InterestAmt") %></td>
                                <td class="ey-formlabel1" style="text-align: right; width: 30px;"><%# DataBinder.Eval(Container.DataItem, "PenaltyAmt") %></td>
                                <td class="ey-formlabel1" style="width: 30px;">
                                    <asp:TextBox ID="txtInterestComputedOn" Width="90px" CssClass="Amount" OnKeyUp="javascript:NumberWithCommas(this, this.value);"
                                        runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "IntComputatedOn") %>'></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="reAmount" runat="server" ControlToValidate="txtInterestComputedOn"
                                        ErrorMessage='<%# String.Format("Please Enter Only Numbers in Interest Computed On in Row No {0}", Container.ItemIndex + 1) %>' CssClass="errors"
                                        ValidationExpression1="^\d+(\.\d{1,2})?$"
                                        ValidationExpression="^(?:\d|[,])+$" ValidationGroup="Main">*</asp:RegularExpressionValidator>
                                </td>

                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "PeriodMonth") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "PeriodDays") %></td>
                                <td class="ey-formlabel1" style="width: 30px;">
                                    <asp:TextBox ID="txtInterest" runat="server" Width="90px" CssClass="Amount" OnKeyUp="javascript:NumberWithCommas(this, this.value);"
                                        Text='<%# DataBinder.Eval(Container.DataItem, "Interest") %>'></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="reInterest" runat="server" ControlToValidate="txtInterest"
                                        ErrorMessage='<%# String.Format("Please Enter Only Numbers in Interest in Row No {0}", Container.ItemIndex + 1) %>' CssClass="errors"
                                        ValidationExpression="^(?:\d|[,])+$" ValidationGroup="Main">*</asp:RegularExpressionValidator>
                                </td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "Probable") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "Possible") %></td>
                                <td class="ey-formlabel1" style="width: 30px;"><%# DataBinder.Eval(Container.DataItem, "Remote") %></td>

                                <td class="ey-formlabel1" style="width: 30px;">
                                    <asp:TextBox ID="txtRiskProbable" runat="server" Width="90px" CssClass="Amount" OnKeyUp="javascript:NumberWithCommas(this, this.value);"
                                        Text='<%# DataBinder.Eval(Container.DataItem, "ProbableApp") %>'></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="reRiskProbable" runat="server" ControlToValidate="txtRiskProbable"
                                        ErrorMessage='<%# String.Format("Please Enter Only Numbers in Risk Probable in Row No {0}", Container.ItemIndex + 1) %>' CssClass="errors"
                                        ValidationExpression="^(?:\d|[,])+$" ValidationGroup="Main">*</asp:RegularExpressionValidator>

                                </td>
                                <td class="ey-formlabel1" style="width: 30px;">
                                    <asp:TextBox ID="txtRiskPossible" runat="server" Width="90px" CssClass="Amount" OnKeyUp="javascript:NumberWithCommas(this, this.value);"
                                        Text='<%# DataBinder.Eval(Container.DataItem, "PossibleApp") %>'></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="reRiskPossible" runat="server" ControlToValidate="txtRiskPossible"
                                        ErrorMessage='<%# String.Format("Please Enter Only Numbers in Risk Possible in Row No {0}", Container.ItemIndex + 1) %>' CssClass="errors"
                                        ValidationExpression="^(?:\d|[,])+$" ValidationGroup="Main">*</asp:RegularExpressionValidator>

                                </td>
                                <td class="ey-formlabel1" style="width: 30px;">
                                    <asp:TextBox ID="txtRiskRemote" runat="server" Width="90px" CssClass="Amount" OnKeyUp="javascript:NumberWithCommas(this, this.value);"
                                        Text='<%# DataBinder.Eval(Container.DataItem, "RemoteApp") %>'></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="reRiskRemote" runat="server" ControlToValidate="txtRiskRemote"
                                        ErrorMessage='<%# String.Format("Please Enter Only Numbers in Risk Remote in Row No {0}", Container.ItemIndex + 1) %>' CssClass="errors"
                                        ValidationExpression="^(?:\d|[,])+$" ValidationGroup="Main">*</asp:RegularExpressionValidator>

                                </td>
                            </tr>

                        </ItemTemplate>
                        <FooterTemplate>
                            <tr class="Heading" style="text-align: justify; font-weight: bolder;">
                                <td colspan="21">&nbsp;
                                </td>
                                <td colspan="2" style="text-align: center;">Total
                                </td>
                                <td class="Heading ey-formlabel1" style="text-align: right;">
                                    <asp:Label ID="lblTotal" runat="server"></asp:Label>
                                </td>
                                <td colspan="3">&nbsp;
                                </td>
                                <td class="Heading ey-formlabel1" style="text-align: right;">
                                    <asp:Label ID="lblRiskProbableTotal" runat="server"></asp:Label>
                                </td>
                                <td class="Heading ey-formlabel1" style="text-align: right;">
                                    <asp:Label ID="lblRiskPossibleTotal" runat="server"></asp:Label>
                                </td>
                                <td class="Heading ey-formlabel1" style="text-align: right;">
                                    <asp:Label ID="lblRiskRemoteTotal" runat="server"></asp:Label>
                                </td>
                            </tr>
                            </tbody> </table>
                        </FooterTemplate>
                    </asp:Repeater>

                    <div style="padding: 3px;">
                        <table width="99%" cellpadding="0" cellspacing="1" class="ey-dataTable">
                            <tbody style="background-color: white">
                                <tr class="Heading">
                                    <td class="ey-formlabel1 AlignedRow" rowspan="2" style="width: 600px;">test by Nadeem 
                                    </td>
                                    <td class="ey-formlabel1 AlignedRow" colspan="2" style="width: 5px;">test by Nadeem 
                                    </td>
                                    <td class="ey-formlabel1 AlignedRow">Pending
                                    </td>
                                </tr>
                                <tr>
                                    <td class="ey-formlabel1">Item</td>
                                    <td class="ey-formlabel1">Item1</td>
                                    <td class="ey-formlabel1">Item2</td>
                                    <td class="ey-formlabel1">Item3</td>
                                </tr>
                            </tbody>
                        </table>
                    </div>

                    <div id="divIntNoRecGrid" runat="server" visible="false" style="font-size: 12px; font-family: Arial; margin-top: 20px; color: Red;">
                        No Record(s) found...
                    </div>
                    <div style="margin-top: 10px;" id="divPaging" runat="server">
                        <table style="width: 400px;">
                            <tr>
                                <td>
                                    <asp:LinkButton ID="lbFirst" Text="| < First" runat="server"
                                        OnClick="lbFirst_Click"></asp:LinkButton>
                                </td>
                                <td>
                                    <asp:LinkButton ID="lbPrevious" runat="server"
                                        OnClick="lbPrevious_Click" Text="| << Previous"></asp:LinkButton>
                                </td>
                                <td>
                                    <asp:LinkButton ID="lbNext" runat="server"
                                        OnClick="lbNext_Click" Text="| Next >> |"></asp:LinkButton>
                                </td>
                                <td>
                                    <asp:LinkButton ID="lbLast" runat="server"
                                        OnClick="lbLast_Click" Text="Last > |"></asp:LinkButton>
                                </td>
                                <td>
                                    <asp:Label ID="lblpage" runat="server" Text=""></asp:Label>
                                </td>
                            </tr>
                        </table>
                    </div>

                    <div style="overflow: hidden; display: none;">
                        <asp:Repeater ID="rptPaging" runat="server" OnItemCommand="rptPaging_ItemCommand">
                            <ItemTemplate>
                                <asp:LinkButton ID="btnPage"
                                    Style="padding: 8px; margin: 2px; background: gray; border: solid 1px #666; font: 8pt tahoma;"
                                    CommandName="Page" OnClientClick="ShowProgress();" CommandArgument="<%# Container.DataItem %>"
                                    runat="server" ForeColor="White" Font-Bold="True"><%# Container.DataItem %>
                                </asp:LinkButton>
                            </ItemTemplate>
                        </asp:Repeater>
                    </div>
                </div>

我的 css 类如下:

    .ey-dataTable
{
    background-color: rgb(219,221,221); 
    width: 99.5%;
    margin-top: 5px;
    margin-bottom: 2px;
}
.ey-formlabel1
{
    font-family: Arial;
    font-size: 12px;
    text-align: left;
    padding-top: 3px;
    padding-bottom: 3px;
    padding-left: 1px;
    padding-right: 6px;
    vertical-align: top;
}   
.AlignedRow
        {
            vertical-align: top;
            text-align: center;
        }

【问题讨论】:

    标签: html css asp.net


    【解决方案1】:

    我不能确切地说出了什么问题,但我可以给你一些指点:

    第一个问题是标题。你有一个行跨度。但是你跨越在一起的行有不同的宽度。您无法确定浏览器会对此做出何种反应。

    第二。最好不要混合 % 和 px。结果会因屏幕宽度而异。

    提示:仅在第一行设置宽度。这已经足够了,让你的生活更容易找出问题所在。您不需要每行的宽度定义。 1 行就可以了。

    我希望这会让你朝着正确的方向点头

    【讨论】:

    • 感谢您的回复@Thor,根据您的指示,我仅以 % 为单位给出了宽度,并且仅对第一行给出了宽度,但问题仍然存在。
    猜你喜欢
    • 1970-01-01
    • 2014-04-09
    • 2011-08-17
    • 2013-09-23
    • 2013-09-20
    • 2013-02-09
    • 2019-04-01
    • 2012-09-04
    • 1970-01-01
    相关资源
    最近更新 更多