我正在尝试使用javascript修改asp.net控件的显示和复选框,因为updatepanel只是纯粹的垃圾。但出于某种荒谬的原因,这有效:
document.getElementById('ctl00_ctl00_MainContainer_WorkContainer_AppointmentFormView_RecurringRow').setAttribute('style', 'display: none');
而这不是:
document.getElementById('ctl00_ctl00_MainContainer_WorkContainer_AppointmentFormView_RecurringRow').style.display = 'none';
如果我实际上是第二种方式,我调试显示的值,它实际上没有,但它仍然在我的UI中可见。奇怪的东西......
如果设置了这个值,则检查值也是如此:
document.getElementById('ctl00_ctl00_MainContainer_WorkContainer_AppointmentFormView_Monday').checked = false;
它只是不起作用,唯一的解决方法是查看是否实际检查了值,然后单击它,如下所示:
if (document.getElementById('ctl00_ctl00_MainContainer_WorkContainer_AppointmentFormView_Monday').checked) {
document.getElementById('ctl00_ctl00_MainContainer_WorkContainer_AppointmentFormView_Monday').click();
}
我需要仔细检查的任何想法?因为这对我没有任何意义:))
答案 0 :(得分:-1)
像这样改变以上所有
document.getElementById('<% AppointmentFormView_RecurringRow.ClientID %>').setAttribute('style', 'display: none');
document.getElementById('<% AppointmentFormView_RecurringRow.ClientID %>').style.display = 'none';
document.getElementById('<% AppointmentFormView_Monday.ClientID %>').checked = false;
if(document.getElementById('<%AppointmentFormView_Monday.ClientID%>').checked) {
document.getElementById('<%AppointmentFormView_Monday.ClientID%>').click();
}