2

どういうわけか私はこのエラーを受け取り続けます、私は理由がわかりません。

Uncaught TypeError: Cannot set property 'checked' of null js.js:4
check js.js:4
(anonymous function)

これが私のコードです:

document.body.onload="check()";
function check()
{
document.getElementById("urlchoice").checked=true;
}
4

3 に答える 3

1

まず、そうdocument.getElementById("urlchoice")であるnullかどうかを確認します。

    window.onload = check;

    function check(){
        if(document.getElementById("urlchoice")!=null){ // available
           document.getElementById("urlchoice").checked = true; 
        }
    }
于 2012-10-10T11:45:51.833 に答える
0

IDを持つ要素があると仮定するとurlchoice(その不在は診断するのは簡単ですが、それが呼び出されていると言うので、それが問題の原因になるとは思わない)、ではなくcheck、を試してください。window.onloaddocument.body.onload

編集

ここでも、ドキュメントにid =のラジオボタン要素がurlchoiceあり、スクリプトが適切に呼び出されて実行されていると仮定すると、

試す:

function check() {
    document.getElementById("urlchoice").checked=true;
}
window.onload=check;

また

window.onload = function () {
    document.getElementById("urlchoice").checked=true;
}

これらは本当に機能するはずです。

于 2012-10-10T01:59:21.243 に答える
0

IDが「urlchoice」の未確認の要素のエラーポイント、それが存在することを確認しますか?

<body>    
    <input id="urlchoice" type="radio">

    <script>
        document.body.onload = check();
        function check(){        
            document.getElementById("urlchoice").checked=true;
        }
    </script>
</body>

動作しているようです(document.body.onload = check();行の二重引用符を削除しましたが、動作しません

于 2012-10-10T02:11:13.297 に答える