【问题标题】:Check Box issue in Ext.NETExt.NET 中的复选框问题
【发布时间】:2014-04-17 07:44:49
【问题描述】:

当我运行时复选框显示为按钮.. 我的“company.ascx”代码是这样的:

<ext:FormPanel LabelWidth="160" runat="server" ID="CompanyFormPanel" Border="false" IDMode="Static" Padding="10"  Width="1000" Layout="ColumnLayout"  Height="480">
        <Items>
            <ext:FieldSet ID="companyPanel1" runat="server" IDMode="Static" Layout="Form" Border="false" >
            <Defaults>
                <ext:Parameter Name="LabelSeparator" Value=" " />                    
                <ext:Parameter Name="LabelWidth" Value="160" />                    
                <ext:Parameter Name="Width" Value="360" />         
            </Defaults>
                <Items>                   

                   <ext:TextField ID="txtCompanyLoginCode" AllowBlank="false" runat="server" IDMode="Static" Name="CompanyLoginCode" 
                       FieldLabel="Company Login Code"  >                           
                   </ext:TextField>               

                   <ext:TextField ID="txtCompanyTaxID" runat="server" IDMode="Static" Name="CompanyTaxID" FieldLabel="Company TaxID"></ext:TextField>

                   <ext:TextField ID="txtCompanyName" runat="server" IDMode="Static" Name="CompanyName" AllowBlank="false" FieldLabel="Company Name" ></ext:TextField>
                   <ext:TextField ID="txtCompanyAddressLine1" runat="server" IDMode="Static" Name="CompanyAddressLine1"  FieldLabel="Company Address Line1" ></ext:TextField>
                   <ext:TextField ID="txtCompanyAddressLine2" runat="server" IDMode="Static" Name="CompanyAddressLine2" FieldLabel="Company Address Line2"></ext:TextField>

                   <ext:TextField ID="txtComCity" runat="server" IDMode="Static" Name="City" FieldLabel="City" ></ext:TextField>                                            

                 <ext:ComboBox AllowBlank="false" ID="cmbCountries" runat="server" FieldLabel="County" 
                                    Name="CountyCode" ValueField="CountyCode" TypeAhead="true" QueryMode="Local" 
                                    DisplayField="CountyName" StoreID="dsCountries" IDMode="Static">                       
                 </ext:ComboBox> 

                <ext:ComboBox AllowBlank="false" ID="cmbStates" runat="server" FieldLabel="State" 
                    Name="StateCode" ValueField="StateCode" DisplayField="StateCode" QueryMode="Local" 
                    StoreID="dsStates" IDMode="Static"  TypeAhead="true">    

                </ext:ComboBox>                        

                <ext:TextField ID="txtE_Mail" runat="server" IDMode="Static" Name="E_Mail" FieldLabel="Email"  ></ext:TextField>
                 <ext:TextField ID="txtComPhoneNo" runat="server" IDMode="Static" Name="PhoneNo" FieldLabel="PhoneNo" ></ext:TextField>
                 <ext:TextField ID="txtFax" runat="server" IDMode="Static" Name="Fax" FieldLabel="Fax" ></ext:TextField>
                 <ext:TextField AllowBlank="false" ID="txtSyncUser" runat="server" IDMode="Static" Name="SyncUser" FieldLabel="SyncUser"></ext:TextField>
                 <ext:TextField AllowBlank="false" ID="txtSyncPwd" runat="server" IDMode="Static" Name="SyncPwd" FieldLabel="SyncPwd" ></ext:TextField>                 
                 <ext:Checkbox ID="chkEnableMobLogging" Type="Checkbox" runat="server" Name="EnableMobileLogging" IDMode="Static" FieldLabel="Enable Mobile Logging"></ext:Checkbox>                                                                                             
                 <ext:Checkbox ID="chkIsInPosSyncStatus" runat="server" Name="IsInPOSSyncStatus" IDMode="Static" FieldLabel="See Data in POS Sync Status"></ext:Checkbox>    
                </Items>
            </ext:FieldSet>

        </Items>
    </ext:FormPanel>

当我运行项目时,html 代码显示如下:

<input type="button" hidefocus="true" autocomplete="off" class="x-form-field x-form-checkbox" id="chkEnableMobLogging-inputEl" aria-invalid="false" data-errorqtip="">

这里type 显示为按钮。它需要是复选框。我可以知道它为什么会发生变化以及如何将其设置为复选框吗?

【问题讨论】:

    标签: javascript jquery asp.net ext.net


    【解决方案1】:

    原因是跨浏览器兼容性。

    Ext.NET/ExtJS 将 Checkbox 呈现为

    <input type="button">
    

    有可能为所有浏览器使用相同的视图对其进行样式化。原生复选框是不可能的。

    您可以在 FireFox 和 Chrome 中尝试使用本机复选框,看看它们的外观有何不同。

    不过,如果启用了 ARIA,应该有“复选框”,the ExtJS sources 中有这样的注释(搜索“ARIA”):

    那么,请在“复选框”中说明您需要的原因是什么?

    【讨论】:

    • 感谢您的回复。我需要一个复选框,它必须被选中,它不会变成按钮。我必须为此做些什么......
    • 您可以使用原生 HTML 元素。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多