问题
I have few generated text fields. I want to show datepicker on text field click.
<!-- text fields -->
<input id="id_validity_set-0-valid_until" name="validity_set-0-valid_until" type="text" />
<input id="id_validity_set-1-valid_until" name="validity_set-1-valid_until" type="text" />
<input id="id_validity_set-2-valid_until" name="validity_set-2-valid_until" type="text" />
<!-- jquery code -->
$(document).on("click", "input[type='text']", function() {
$( this ).datepicker({ dateFormat: 'yy-mm-dd ' });
});
When I click first time, nothing happens but if I click second time into text field datepicker shows itself. How to make datepicker show on first click? Thanks
回答1:
just
$( "input").datepicker({ dateFormat: 'yy-mm-dd ' });
you dont need to use click method
demo
$( "input" ).datepicker({ dateFormat: 'yy-mm-dd ' });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<input id="id_validity_set-0-valid_until" name="validity_set-0-valid_until" type="text" />
<input id="id_validity_set-1-valid_until" name="validity_set-1-valid_until" type="text" />
<input id="id_validity_set-2-valid_until" name="validity_set-2-valid_until" type="text" />
回答2:
$(document).ready(function ()
{
$("input[type = 'text']").datepicker({
dateFormat: 'yy-mm-dd '
});
});
来源:https://stackoverflow.com/questions/35923682/javascript-action-on-click