Tenemos un sitio web de cliente donde los menús desplegables dejan de funcionar.
Google Console muestra lo siguiente:
TypeError no capturado: no se pueden leer las propiedades de nulo (leyendo 'estilo')
en OpenListBox (Location_Edit.aspx?lid=11502:47)
en HTMLSpanElement.onclick (Location_Edit.aspx?lid=11502:623)
El código para esta sección es el siguiente: ** es la línea 623 donde se anota el error.
<div> <table id="canvas_multiSelectDropDown1_Table2" style="TABLE-LAYOUT: fixed; HEIGHT: 24px" borderColorDark="#cccccc" borderColorLight="#7eb3e3" cellspacing="0" cellpadding="0" width="100%" border="1"> <tr id="canvas_multiSelectDropDown1_rowDD" ** style="HEIGHT: 15px"> <TD nowrap="nowrap"> <span id="canvas_multiSelectDropDown1_DDLabel" onclick="OpenListBox('ctl00_canvas_multiSelectDropDown1_');" style="display:inline-block;border-color:Transparent;border-style:None;font-family:Arial;font-size:Smaller;height:15px;width:250px;CURSOR: default">VSP - Xerox Phaser 6600 (Black)</span></TD>** <TD id="canvas_multiSelectDropDown1_colDDImage" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; BACKGROUND-COLOR: #7eb3e3" width="20" background="images/DDImage.bmp" onclick="OpenListBox('ctl00_canvas_multiSelectDropDown1_');"></TD> </tr> </table>Mirando más allá, ... ¿es posible que el error esté en el conjunto de código: OpenListBox?
function OpenListBox(ctlId) { var lstBox = document.getElementById(ctlId + "DDList"); if (lstBox.style.visibility == "visible") { CloseListBox(ctlId); } else { lstBox.style.visibility = "visible"; lstBox.style.height = "120px"; } }_________________-
Problema resuelto: este era un sitio web migrado recientemente; después de migrar, noté: la versión actual es Microsoft .NET Framework Versión: 4.0.30319; Versión de ASP.NET: 4.7.3905.0
La solución fue volver a Microsoft .NET Framework versión 2.0