iT邦幫忙

0

react 一些小問題

gameking93 4 月前5035 瀏覽

我的react裡面有一段程式碼一直報error

但是換到react以外的地方測試就正常

怎麼改都報錯

程式碼如下 :

    let modal = document.getElementById('myModal_logicroute');
    let btn = document.getElementById("myBtn_logicroute");
    let span = document.getElementsByClassName("close")[0];
    btn.onclick = function() {
        modal.style.display = "block";
    }
    span.onclick = function() {
        modal.style.display = "none";
    }
    window.onclick = function(event) {
        if (event.target == modal) {
            modal.style.display = "none";
        }
    }
    
    

error msg :

Uncaught TypeError: Cannot set property 'onclick' of undefined

Uncaught TypeError: Cannot read property 'style' of null

1 個回答

0
zhiqinyigu
iT邦新手 5 級 ‧ 3 月前

很明顯,你有變量是undefined。建議對btnwindowspan進行console.log()。直覺告訴我你在react渲染UI前執行了這裏的程式,此時DOM還沒有生成。

gameking93 iT邦新手 5 級 ‧ 3 月前 檢舉

@zhiqinyigu 沒錯 你說的對 只是我不知道怎麼克服這方面的問題

像jquery就很方便

不過我的程式裡目前是不打算使用它

gameking93 iT邦新手 5 級 ‧ 3 月前 檢舉

已解決 感謝

我要發表回答

立即登入回答