2017-04-26 15 views
1

これは私を狂ってしまいます。下図のように私は、フォーム要素を持つHTMLページを持っている:私のapp.jsでクエリーセレクタがnullを返す

<head> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 

    <script src="formHandler.js"></script> 
    <script src="app.js"></script> 

</head> 

<body> 

    <form data-coffee-order="form"> 
    <input type="submit" /> 
    </form> 

</body> 

私は、以下に示すようquerySelectorを使用してフォーム要素にアクセスしよう:

var FORM_SELECTOR = '[data-coffee-order="form"]' 

var form = document.querySelector(FORM_SELECTOR) 
console.log(form) // this is null why? 

何らかの理由書について常にnullです。何故ですか?

+0

後で 'data-coffee-order ="フォーム "で追加していますか(おそらくjQuery' .data() ')していますか? – FrankerZ

答えて

3

の前にのJavaScriptコードが実際に存在します。後にコードを配置:

<body> 

    <form data-coffee-order="form"> 
     <input type="submit" /> 
    </form> 

    <script src="app.js"></script> 

</body> 

(これはまたあなたの他のJavaScriptに適用される場合がありますそれは必要はありませんが、ちょうど一貫性を保つために、それは理にかなっている場合でも、あなたはすぐに実行したいJavaScriptのコードがありますがない限り、前に。 DOMがロードされています。

+0

これは完全に意味があります!ありがとう! –