Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ <h2>Keyboard Controls</h2>
</ol>
</li>
</ul>
<label for="demo-2">Date</label> <input type="text" class="w8em" id="demo-2" name="demo-2" value="" />
<label for="demo-2">Date</label> <input type="text" class="w8em" id="demo[2]" name="demo-2" value="" />
</fieldset>
<script>
// Create a few variables to pass to the datePicker
Expand All @@ -117,7 +117,7 @@ <h2>Keyboard Controls</h2>
// Create the datePicker
datePickerController.createDatePicker({
// Associate the three text inputs to their date parts
formElements:{"demo-2":"%d/%m/%Y"},
formElements:{"demo[2]":"%d/%m/%Y"},
// Show week numbers
showWeeks:true,
// Set a statusbar format
Expand Down
8 changes: 6 additions & 2 deletions js/datepicker.js
Original file line number Diff line number Diff line change
Expand Up @@ -393,6 +393,10 @@ var datePickerController = (function datePickerController() {
return dt instanceof Date && !isNaN(dt) ? dt.getFullYear() + pad(dt.getMonth() + 1) + "" + pad(dt.getDate()) : dt;
};

function escapeSpecialChars(str){
return str.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g, '\\$1');
}

// The datePicker object itself
function datePicker(options) {
this.dateSet = null;
Expand Down Expand Up @@ -1402,7 +1406,7 @@ var datePickerController = (function datePickerController() {
var el = e.target != null ? e.target : e.srcElement,
origEl = el,
hideDP = true,
reg = new RegExp("^fd-(but-)?" + o.id + "$");
reg = new RegExp("^fd-(but-)?" + escapeSpecialChars(o.id) + "$");

o.mouseDownElem = null;

Expand Down Expand Up @@ -1430,7 +1434,7 @@ var datePickerController = (function datePickerController() {
};

// We check the mousedown events on the buttons
if(origEl.id.search(new RegExp("^" + o.id + "(-prev-year-but|-prev-month-but|-next-month-but|-next-year-but)$")) != -1) {
if(origEl.id.search(new RegExp("^" + escapeSpecialChars(o.id) + "(-prev-year-but|-prev-month-but|-next-month-but|-next-year-but)$")) != -1) {

o.mouseDownElem = origEl;

Expand Down
4 changes: 2 additions & 2 deletions js/datepicker.min.js

Large diffs are not rendered by default.