【问题标题】:Change Asp Button class after file upload文件上传后更改 Asp Button 类
【发布时间】:2015-11-10 18:07:27
【问题描述】:

我想在文件上传后启用一个禁用的按钮。但是,我似乎无法启用它。

<asp:Content runat="server" ID="BodyContent" ContentPlaceHolderID="MainContent">
    <script type="text/javascript">
        $('#FileUpload').on('change', function (e) {
            Document.getElementById("btnUploadFile").className = "btn standard-gradient";
        });
    </script>

    <asp:FileUpload ID="FileUpload" runat="server" class="btn"/>

    <asp:Button runat="server" ID="btnUploadFile" Text="Upload File" OnClick="btnUploadFile_OnClick" class="btn standard-gradient disabled"/>
</asp:Content>

【问题讨论】:

    标签: javascript asp.net twitter-bootstrap


    【解决方案1】:

    试试这个脚本:

    <script type = "text/javascript" >
        $('#FileUpload').on('change', function (e) {
            var btn = $("#btnUploadFile");
            if (btn.prop("disabled")) { $("#btnUploadFile").prop('disabled', '') } 
            else { $("#btnUploadFile").prop('disabled', 'disabled') }
        });
    </script>
    

    检查这个 JSFIDDLE 作为示例。

    HTML

    <button id="FileUpload">file</button>
    <button id="btnUploadFile">btn</button>
    

    JS

    $('#FileUpload').on('click', function (e) {
        var btn = $("#btnUploadFile");
        if ( btn.prop( "disabled" ) ){
            $("#btnUploadFile").prop('disabled', '')
        }
        else {$("#btnUploadFile").prop('disabled', 'disabled')}
    });
    

    【讨论】:

    • 由于某种原因,当我点击 asp:FileUpload 时没有任何反应,它对按钮没有任何作用
    • @DeVonte 您的btnUploadFile 是服务器控件。如果您尚未将默认 ClientIDMode 设置为 Static,则必须使用 JavaScript 中的服务器脚本格式引用它,即 &lt;%= btnUploadFile.ClientID %&gt;
    • @De Vonte,如果我没记错的话,请检查您的 dom 中的按钮 ID,如果我没记错的话,ASP 正在稍微更改 id。如果是的话,你可以试试哈曼的建议......
    猜你喜欢
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-04
    • 2016-11-19
    • 2020-09-02
    • 2011-07-30
    • 2015-02-11
    相关资源
    最近更新 更多