2013-06-18 16 views
-2

我有一些關於css和UI的問題。 好像當我點擊一個button,有一個回發或在我的網站驗證,我divstablestdstr ..停下來有我給他們,改變自己的價值。我討厭擁有一切如此完美的結構,然後驗證控件將其擰緊。帶寬的用戶界面錯誤

例如:

這兩個圖像 image 1 image 2

之前,點擊一個按鈕APPLY,並造成驗證後。

正如你所見,它改變了寬度。

我的代碼是這樣的:

<table> 
           <tr> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblAlarmGroup" runat="server" Text="<%$ Resources:Master, GroupnameText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbAlarmGroup"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox ID="cmbAlarmGroup" runat="server" ValueType="System.Int32" Width="150px" 
              DataSourceID="sqlDSAlarmGroups" TextField="GroupName" ValidationSettings-RequiredField-IsRequired="true" 
              ValueField="AlarmsListGroupsID" AutoPostBack="True" OnSelectedIndexChanged="cmbAlarmGroup_SelectedIndexChanged"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblAlarm" runat="server" Text="<%$ Resources:Master, AlarmText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbAlarmsList"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbAlarmsList" runat="server" ValueType="System.Int32" 
              AutoPostBack="True" OnSelectedIndexChanged="cmbAlarmsList_SelectedIndexChanged" 
              TextField="value" ValueField="key" ValidationSettings-RequiredField-IsRequired="true"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
           </tr> 
           <tr> 
            <td colspan="5" style="width: 525px"> 
             <hr /> 
            </td> 
           </tr> 
           <tr> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblSite" runat="server" Text="<%$ Resources:Master, SiteText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbSite"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbSite" runat="server" ValueType="System.Int32" 
              OnSelectedIndexChanged="cmbSite_SelectedIndexChanged" TextField="value" ValueField="key" 
              AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblDepartment" runat="server" Text="<%$ Resources:Master, DepartmentText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbDepartment"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbDepartment" runat="server" ValueType="System.Int32" 
              TextField="value" ValueField="key" OnSelectedIndexChanged="cmbDepartment_SelectedIndexChanged" 
              AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
           </tr> 
           <tr> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblLine" runat="server" Text="<%$ Resources:Master, LineText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbLine"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbLine" runat="server" TextField="value" ValueField="key" 
              ValueType="System.Int32" OnSelectedIndexChanged="cmbLine_SelectedIndexChanged" 
              AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblOperation" runat="server" Text="<%$ Resources:Master, OperationText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbOperation"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbOperation" runat="server" ValueType="System.Int32" 
              TextField="value" ValueField="key" OnSelectedIndexChanged="cmbOperation_SelectedIndexChanged" 
              AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
           </tr> 
           <tr> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblShift" runat="server" Text="<%$ Resources:Master, ShiftText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbShift"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbShift" runat="server" TextField="value" ValueField="key" 
              ValueType="System.Int32" AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td style="width: 105px"> 
             <dx:ASPxLabel ID="lblStation" runat="server" Text="<%$ Resources:Master, StationText %>" 
              CssClass="CamelCase" AssociatedControlID="cmbStation"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 155px"> 
             <dx:ASPxComboBox Width="150px" ID="cmbStation" runat="server" TextField="value" ValueField="key" 
              ValueType="System.Int32" AutoPostBack="True"> 
              <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
             </dx:ASPxComboBox> 
            </td> 
           </tr> 
           <tr> 
            <td colspan="5" style="width: 525px"> 
             <hr /> 
            </td> 
           </tr> 
           <tr> 
            <td colspan="2" style="width: 260px"> 
             <dx:ASPxLabel ID="lblNoficationInterval" runat="server" Text="<%$ Resources:Master, NotificationSendIntervalText %>" 
              AssociatedControlID="aspxseNotificationInterval"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td colspan="2" style="width: 260px"> 
             <dx:ASPxSpinEdit ID="aspxseNotificationInterval" runat="server" Height="21px" Number="5" 
              MaxValue="10000" MinValue="5"> 
             </dx:ASPxSpinEdit> 
            </td> 
           </tr> 
           <tr> 
            <td colspan="2" style="width: 260px"> 
             <dx:ASPxLabel ID="lblExcalationInterval" runat="server" Text="<%$ Resources:Master, EscalationSendIntervalText %>" 
              AssociatedControlID="aspxseEscalationInterval"> 
             </dx:ASPxLabel> 
             : 
            </td> 
            <td style="width: 5px"> 
             &nbsp; 
            </td> 
            <td colspan="2" style="width: 260px"> 
             <dx:ASPxSpinEdit ID="aspxseEscalationInterval" runat="server" Height="21px" Number="10" 
              MaxValue="10000" MinValue="5"> 
             </dx:ASPxSpinEdit> 
            </td> 
           </tr> 
          </table> 

我一直有這個問題一直以來我的項目,我沒有想出了一個固溶體。 這是否發生在你們任何人身上? 應該是什麼解決方案?製作CSS類併爲它們分配所有東西? 謝謝

編輯:

我刪除那些2下拉列表中選擇驗證,但是當我在他們把一個值,它會發生什麼,你可以在圖片中看到。 它只發生在這種情況下;如果選擇的項目是其他,那UI拒絕者沒有發生

Image 3 任何線索?

+0

對於這一切只是把-1到這種問題,之前發佈的解決方案的人。你的懶惰值得-5。 – AAlferez

+0

你能否澄清一點你的編輯?對不起,我很難找出你想說的話。 – JAKEtheJAB

回答

0

看起來您正在使用Dev Express控件。如果您使用瀏覽器的開發人員工具檢查Dev Express控件呈現的HTML,您將看到它們實際上不會呈現HTML輸入或選擇,而是嵌套HTML輸入並在HTML表格內進行選擇。

表格通常會將輸入控件放在一列中,並將驗證錯誤消息放在另一列中。 Dev Express暴露了可以更改驗證錯誤消息外觀的屬性,但是您將無法更改錯誤消息呈現方式(在表列內)。

解決方法之一是在控件上設置ErrorDisplayMode =「None」,這將隱藏驗證消息。然後通過JavaScript,您可以處理控件的驗證事件並顯示自定義錯誤消息。

例如:

<script type="text/javascript"> 
    function cmbStation_Validation(s, e) { 
    alert(s.errorText); 
    } 
</script> 

<dx:ASPxComboBox Width="150px" ID="cmbStation" runat="server" TextField="value" ValueField="key" ValueType="System.Int32" AutoPostBack="True"> 
    <DisabledStyle BackColor="LightGray" ForeColor="Black" /> 
    <ClientSideEvents Validation="cmbStation_Validation"> 
    <ValidationSettings ErrorDisplayMode="None"> 
    </ValidationSettings> 
</dx:ASPxComboBox> 
+0

因此,如果我添加驗證,那會一直髮生?這很糟糕。有沒有辦法指定驗證將要添加的額外列,以便我可以爲它創建空間? – AAlferez

+0

請檢查我的'編輯' – AAlferez