我如何捕获对象为null或不是对象。实际上,我已经在解决该问题的条件下写过了这行,但是没有用。

但是生成错误:-“对象为空或不是对象”

var preWynum = "";
function paint(Wynum)
{
    // alert("Wynum:"+Wynum +", preWynum:"+preWynum);
    if(document.getElementById(preWynum) && document.getElementById(Wynum))
    {
      document.getElementById(preWynum).style.backgroundColor='white';
      document.getElementById(Wynum).style.backgroundColor='yellow';
    }

   preWynum = Wynum;

}


我不相信为什么它没有运行。
 还有其他想法吗?

preWynum和Wynum是tr(表行)的ID。

我想将黄色的背景色设置为当前选中的行(ID为Wynum)。

最佳答案

该错误是因为当您期望一个字符串时,您正在将一个对象(不存在)传递给getElementById()

// Put quotes around 'preWynum' and 'Wynum'
if(document.getElementById('preWynum') && document.getElementById('Wynum'))
{
  document.getElementById('preWynum').style.backgroundColor='white';
  document.getElementById('Wynum').style.backgroundColor='yellow';
}

09-20 09:17