2016-08-15 2 views
1

На флажке на моей странице есть событие onclick, чтобы включить кнопку, когда она отмечена, и отключите ее, когда она не отмечена. иногда мне нужно, чтобы кнопка была полностью отключена, но я не хочу, чтобы она была невидимой.удалить атрибут onClick в коде за

чекбокс выглядит следующим образом:

<asp:CheckBox ID="cb_start" runat="server" onClick="cb_start_click()"/> 
<script> 
    var cb = document.getElementById("ContentPlaceHolder1_cb_start"); 
    var btn = document.getElementById("ContentPlaceHolder1_btn_start"); 
    function cb_start_click(){ 
     btn.disabled = !cb.checked; 
    } 
</script> 

В коде позади я попытался это, но он не работает:

cb_start.Attributes.Remove("onClick"); 
if (somecase) cb_start.Attributes.Add("onClick", "cb_start_click()"); 

ответ

0

Вы не должны удалить слушателя. Вы можете разместить if (somecase) в функции обратного вызова cb_start_click(), чтобы кнопка не включалась.

+0

Я не думаю, что я могу получить необходимую информацию внутри JS, поскольку она исходит из базы данных sql. Я создал обходной путь, сделав кнопку невидимой и сделав еще одну кнопку, в том же месте с тем же самым видом видимым, но он статически отключен. Не очень хорошее решение, но оно выполняет свою работу. – lenny