2014-01-16 76 views
1

我有頁面上的按鈕和文件上傳控件,我想啓用或禁用基於文件上傳控件的值的按鈕。如果文件上傳沒有選擇文件,那麼按鈕仍然禁用。啓用和禁用使用javascript

代碼工作正常,但如果您選擇文件,然後按鈕能夠(正確的行爲),那麼你點擊文件上傳控制,但這次你想點擊取消,但沒有禁用按鈕。

function enableButton() { 
     var a = document.getElementById("<%=file_upload.ClientID%>") 
     if (a == 0) { 
      document.getElementById("<%=btnAdd.ClientID%>").disabled = true; 
     } 
     else { 
      document.getElementById("<%=btnAdd.ClientID%>").disabled = false; 
     } 

    } 


<asp:FileUpload ID="file_upload" runat="server" AllowMultiple="true" maxLength="10" accept="text/plain" Enabled="false" CssClass="cssFileUpload" onchange="enableButton()"/> 

    <asp:Button ID="btnAdd" runat="server" Text="Add Files" onclick="btnAdd_Click" Enabled="false" /> 

回答

1

如果找不到任何元素,document.getElementById將返回null。 使用

if(a == null) {} 
1

我好像問題是你正在檢查控制它自己a == 0。如果您另外檢查了諸如價值的財產。

if(a == null || a.value == "")