Reputation: 73
I'm trying to get a Bootstrap Datepicker in my form. Without form, I managed to get one. But copy + past this code into my form isn't working. All files are there and needed code is the same.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>AR_welcome</title>
<!-- Bootstrap -->
<link rel="stylesheet" href="assets/bootstrap/css/bootstrap.min.css">
<script src="/assets/bootstrap/js/bootstrap.min.js">
</script>
<link rel="stylesheet" href="/assets/bootstrap/css/bootstrap.min.css" />
<!-- Font + Style + Icons-->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro">
<link rel="stylesheet" href="/assets/css/styles.css">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Datepicker -->
<script src="/assets/bootstrap-datepicker/js/bootstrap-datepicker.min.js">
</script>
<script src="/assets/bootstrap-datepicker/locales/bootstrap-datepicker.nl.min.js">
</script>
<link rel="stylesheet" href="/assets/bootstrap-datepicker/css/bootstrap-datepicker.css">
</head>
<body>
<script>
$(document).ready(function() {
$('.datepicker').datepicker({
format: "dd-mm-yyyy",
todayHighlight: true,
autoclose: true,
language: 'nl',
weekStart: '1',
});
});
</script>
<main>
<div class="content">
<form>
<div class="form-row" style="margin-top:10px;">
<div class="col">
<div class="form-group"><label><strong>Pickup date:</strong></label>
<div id="datepicker-group" class="input-group date"><input class="form-control" name="data" type="text" placeholder="Pickup" /><span class="input-group-addon"><i class="fas fa-calendar-alt"></i></span></div>
</div>
</div>
<div class="col">
<div class="form-group"><label><strong>Deliver date:</strong></label>
<div id="datepicker-group" style="display:inline" class="input-group date"><input class="form-control-datepicker" name="data" type="text" placeholder="Deliver" /><span class="input-group-addon"><i class="fas fa-calendar-alt"></i></span>
</div>
</div>
</div>
</div>
</form>
</div>
</main>
</body>
</html>
Isn't it possible to use this datepicker in a form? Or is there something else wrong in this code?
Upvotes: 0
Views: 169
Reputation: 21526
Something wrong in your HTML:
More than 1 element has same identifier id="datepicker-group"
. Change it to class.
<div class="col">
<div class="form-group">
<div class="datepicker-group input-group date">
</div>
</div>
</div>
<div class="col">
<div class="form-group">
<div class="datepicker-group input-group date">
</div>
</div>
</div>
In your JavaScript code, you initialize datepicker with class .datepicker
but there is no element with such class in your HTML.
<input class="datepicker" name="data" type="text" placeholder="Deliver" />
From @louys' comment, some of your libraries are not loaded in the right order. jQuery
needs to be loaded first.
fiddle: http://jsfiddle.net/aq9Laaew/171701/
Upvotes: 1