以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  JS遇到问题:Cannot set property 'innerHTML' of null  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128149)

--  作者:bahamute
--  发布时间:2018/11/29 20:51:00
--  JS遇到问题:Cannot set property 'innerHTML' of null
如下js代码,
为何浏览器报 Uncaught TypeError: Cannot set property \'innerHTML\' of null
arr[1] 为页面元素的id

function HRLogsLockUnlock(bh4){
    var arr = bh4.split("|");
    var result = sendAjaxText(arr[0] + "|LockUnlock","HRLogsListCanDelEditLockUnlock.htm","",false);

    if (result==\'yes\') {
        if(arr[2]==\'锁定\') {
           show("dlg3");
           document.getElementById("#" + arr[1]).innerHTML="解锁";
        }
else{
           show("dlg3");
           document.getElementById("#" + arr[1]).innerHTML="锁定";
}
    }        
    else{
        show("dlg4");
    }
}
[此贴子已经被作者于2018/11/29 20:59:18编辑过]

--  作者:有点甜
--  发布时间:2018/11/29 21:21:00
--  

1、alert(arr[1]) 看看弹出什么

 

2、你页面的id值是什么?改成这样试试 document.getElementById(arr[1])


--  作者:bahamute
--  发布时间:2018/11/29 21:36:00
--  
弹出值为:mya01 页面元素是个超链接,id也是mya01 是企业微信的页面
[此贴子已经被作者于2018/11/29 21:36:39编辑过]

--  作者:有点甜
--  发布时间:2018/11/29 21:41:00
--  

1、为什么要加#?直接获取即可

 

document.getElementById("mya01")

 

2、如果获取不到,那就是你id名称不对。


--  作者:bahamute
--  发布时间:2018/11/29 22:18:00
--  
标签选择器不是都加#的吗?
--  作者:有点甜
--  发布时间:2018/11/29 22:25:00
--  
以下是引用bahamute在2018/11/29 22:18:00的发言:
标签选择器不是都加#的吗?

 

js代码不是jquery的代码,不一样。

 

$()的时候,才需要加#那些。