私はJade TemplateとMaterializeを使用してフォームを作成しています。 Materializeフォームの要素をSelectとFile Input Buttonとして問題なく使用していますが、Date Pickerではありません。Materialize datepickerがuiをトリガーしない
日付ピッカー要素は初期化されますが、入力がクリックされても何も起こりません。
マイフォルダ構造:
.
|-- bower_components
| |-- jquery
| `-- Materialize
|-- public
| |-- javascripts
| | `-- form.js
|-- views
| |-- devices
| | |-- create.jade
| | `-- index.jade
| |-- mixins
| | |-- form.jade
| | |-- form
| | | `-- materialize.jade
| `-- layout.jade
ルートがlayout.jade
とform.jade
を呼び出しcreate.jade
、に行きます。 layout.jade
の内部には<body>
の前にjquery.js
,materialize.js
およびmaterialize.min.css
と呼ばれ、ブロックフッタースクリプトが作成されます。
create.jade
は、次のHTMLを出力します。私のselect
とdate picker
フィールドを初期化するために
<div class="container">
<div class="row">
<form method="post" action="/devices/inserir" class="col s12" enctype="multipart/form-data">
<div class="row">
<h4 class="col s12">Device</h4>
<div class="input-field col s12">
<input type="text" name="title" id="title" class="validate"/>
<label for="title">Title</label>
</div>
<div class="input-field col s12">
<select multiple="multiple" name="platform" id="platform">
<option value="" disabled="disabled" selected="selected">Choose a platform</option>
<option value="PS4">Playstation 4</option>
<option value="PC">PC</option>
</select>
<label for="platform">Platform</label>
</div>
<!-- materialize select -->
<div class="col s12">
<label for="birthdate">Birthdate</label>
<input type="date" id="birthdate" class="datepicker">
</div>
<div class="file-field input-field col s12">
<div class="btn">
<span>File</span>
<input type="file"/>
</div>
<div class="file-path-wrapper">
<input type="text" name="image" class="file-path validate"/>
</div>
</div>
<div class="col s12">
<button type="submit" name="submit" class="btn waves-effect waves-light">Submit</button>
</div>
</div>
</form>
</div>
</div>
<!-- added in block footer-script -->
<script type="text/javascript" src="/javascripts/form.js"></script>
form.js
ファイルは責任があります。ここでは、コードです:
form.js
jQuery(document).ready(function ($) {
$(document).ready(function() {
$('.datepicker').pickadate({
selectMonths: true, // Creates a dropdown to control month
selectYears: 15 // Creates a dropdown of 15 years to control year
});
$('select').material_select();
});
});
そして、私のPrintScreenをショーとして、私のform.js
がうまく私のselect
働くので、問題なく呼び出されます。
私はちょうどdatepicker要素をクリックすると何が起こっているのか知りたいのですが、どうすればこの問題を解決できますか?参考のため
:Materialize forms: Date Picker