の<select>
のスタイルを変更するために、いくつかの要素をフォームに追加する必要がありました。私はクラスにnew_cat_inputs
クラスを追加しました。私はdocument.querySelectorAll()
でそれらを得るだろうと思っていました。
私は最終的に使用し、私は多くのことをしようとしたが、それは働いたことはない:JS - クラス名を使用してdocument.querySelectorAllを理解する
document.getElementsByClassName("new_cat_inputs")
それは私の問題が解決されていますが、私は理解することを意味します。私は頻繁にこの時間を助けなくMDN documentationを読ん
// first attempt, as I'd have used document.querySelector() which works this way
document.querySelectorAll(".new_cat_inputs");
// Logs an error which says it can't read the property "querySelectorAll" of null (body)
document.body.querySelectorAll(".new_cat_inputs");
// doesn't get the elements neither as the 1st attempt. Neither with document.body
document.querySelectorAll("label.new_cat_inputs, input.new_cat_inputs, select.new_cat_inputs");
:ここ
は、私が前に試したものです。
文書全体の機能document.querySelectorAll()
によってで自分クラスことにより、複数のDOM要素を選択する正しい方法は何ですか?
は、document.bodyは 'null'なので、あなたのDOMがロードされていなかったので、多分、あなたはこのイベントリスナー内で、あなたのコードを配置してみましたthe following link
乾杯を参照してください:'ウィンドウを.addEventListener( 'DOMContentLoaded'、function(){ //あなたのコード }) ' ? –
@boehm_sあなたは正しいです、 'window.onload'は十分ではありませんでした – AymDev
しかし、なぜ' document.getElementsByClassName() 'は動作し、' document.querySelectorAll() 'は動作しませんか? @boehm_s – AymDev