ASP.NET使用Javascript表现奇怪

时间:2014-04-01 11:08:45

标签: javascript asp.net

我正在尝试使用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();
                }

我需要仔细检查的任何想法?因为这对我没有任何意义:))

1 个答案:

答案 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();
            }