【问题标题】:How do I make jQuery Datepicker press the submit button automatically after a date has been selected如何让 jQuery Datepicker 在选择日期后自动按下提交按钮
【发布时间】:2015-09-09 08:04:26
【问题描述】:

所以只要在 Datepicker 上选择了一个日期,我就希望按下一个按钮来提交日期。这样用户就不需要点击按钮来提交他们想要查看的日期。

我的 jQuery 代码:

<script>
    $(function() {
    $( "#date" ).datepicker({
        numberOfMonths: 3,
        showButtonPanel: true
    });
    $('#date').datepicker('option', 'dateFormat', 'yy-mm-dd');
    });  
</script>   

然后是 HTML 按钮:

<button type="submit" value="submit" id="submit" name="submit">Submit </button>

感谢您的帮助。

【问题讨论】:

标签: javascript jquery html datepicker


【解决方案1】:

像这样使用 onSelect 事件,Working demo here

$(function() {
    $('#date').datepicker( {
        onSelect: function(date) {
            $("#yourFormId").submit();
            //OR $("#yourButton").click();
        }
    });
});

【讨论】:

  • 如果您发现任何错误,请告诉我,因为由于某种原因它不起作用:&lt;script&gt; $(function() { $( "#date" ).datepicker({ numberOfMonths: 3, showButtonPanel: true }); $('#date').datepicker('option', 'dateFormat', 'yy-mm-dd'); }); $(function() { $('#date').datepicker( { onSelect: function(date) { //$("#calendarForm").submit(); $("#submit").click(); } }); }); &lt;/script&gt;
  • @Karma 你初始化datepicker( { ... } ) 两次试试这个$(function() { $( "#date" ).datepicker( { numberOfMonths: 3, showButtonPanel: true, dateFormat: "yy-mm-dd", onSelect: function( date ) { $("#submit").click(); } } ); } );
  • @ostapische 请查看此link 以及粘贴的代码。由于某种原因日历卡住了,如果我单击它并在其他地方单击它不会关闭日历。而且它也不会提交日期。
  • @Karma 我已经在你提供的链接中编辑了你的代码,并在这里创建了一个工作小提琴jsfiddle.net/7uy4edjz
  • @sajanyamaha 我已经复制了你的代码,现在我的日历没有显示。就是这样looks
【解决方案2】:

我猜你的日期选择器的格式是 .. 然后这样做 :)

 $(function() {
    $( "#date" ).datepicker({
        numberOfMonths: 3,
        showButtonPanel: true,
        onSelect: function(dateText, inst) {
            $(this).parents("form").submit();
        }
    });
    $('#date').datepicker('option', 'dateFormat', 'yy-mm-dd');

}); 

您还可以通过将 dateFormat 选项直接添加到 datepicker 的 init 来缩小代码

 $(function() {
    $( "#date" ).datepicker({
        numberOfMonths: 3,
        showButtonPanel: true,
        onSelect: function(dateText, inst) {
            $(this).parents("form").submit();
        },
        dateFormat: 'yy-dd-mm' 
    });       
}); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 2016-05-31
    • 2016-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多