2011-07-26 85 views
1

我正在處理我的第一個ASP.NET應用程序。我創建了一些文本框和按鈕,並在文本框中添加了客戶端驗證。我現在希望根據文本框的內容和有效性來設置和清除按鈕的啓用屬性。如何在Javascript中引用ASP.NET控件?

我研究的問題和答案herehereherehere,我已經能夠管理最好的就是這...

<script language="javascript" type="text/javascript"> 
    function SetButtonSensitivity() 
    { 
     var label = document.getElementById("<%= lblResult3.ClientID %>"); 
     var button = document.getElementById("<%= btnDone.ClientID %>"); 

     if (Page_ClientValidate()) 
     { 
      label.Text = "valid"; 
      button.disabled = false; 
     } 
     else 
     { 
      label.Text = "not valid"; 
      button.disabled = true; 
     } 

    } 
</script> 

我可以告訴這個腳本被調用時,我標籤遠離文本框字段,因爲錯誤消息是由客戶端驗證的,但腳本對按鈕或標籤沒有影響。

任何人都可以看到我忽略了什麼嗎?

回答

3

不能存取權限從JavaScript標籤的Text屬性。 標籤呈現爲。您應該嘗試設置innerHTML屬性:

label.innerHTML = "not valid"; 

也可以使用javascript控制檯查看您的js代碼中存在哪些錯誤。 (按Ctrl + Shift + J在Firefox)

0

嘗試value屬性,而不是Text

label.value = "valid"; 
button.disabled = false; 
0

好吧,既然你Label實際上呈現爲<span> label.innerText = "valid"

0

您可以使用

label.innerHTML,label.innerText或label.value獲取或設置標籤的文本。

「button.disabled = false/true」應該有效。

相關問題