选择日期后模拟Enter键jQuery

问题描述

我在WordPress网站上使用产品定制程序插件使用jQuery datepicker函数获得了一个表单字段。认情况下,表单字段从来都不打算用作日期选择器,我稍后补充说。虽然我可以使日期选择器与该字段本身一起正常工作,但它在产品上实际显示的唯一方法是在选择日期后在该字段中按Enter。我希望这种情况能够自动发生,因此它会在用户选择日期后或日期选择框失去焦点时出现。我试图模拟使用此方法按下的回车键,但是它什么也没做(虽然控制台日志有效):

   jQuery(function () {
  var e = jQuery.Event( "keydown",{ keyCode: 13 } );
        jQuery("#ui-datepicker-div").focusout(function() {
 jQuery("#date-of-birth-field").focus();
 jQuery("#date-of-birth-field").trigger( e );
 console.log("test");
});

#ut-datepicker-div是dappicker日历元素,而#date-of-birth-field是输入日期的输入ID。

还有其他方法可以做到这一点吗?我也尝试了“加载”功能,但这也不起作用。

解决方法

在您的定义中尝试以下方法:

jQuery(function($) {
  $("#date-of-birth-field,#date-of-death-field,#companioin-2-date-of-birth-field,#companioin-2-date-of-death-field").datepicker({
    changeMonth: true,changeYear: true,yearRange: "c-100:c+0",showButtonPanel: true,dateFormat: 'M dd yy',onSelect: function(dt,obj) {
      $(this).trigger($.Event("keypress",{
        which: 13
      }));
    }
  });

  $("#component-5ed524ac8d83c,#component-5ed671ac50881").click(function() {
    $(this).addClass("maxSize");
  });
});

选择日期后,应触发 Enter 按键。