如何设置 jQuery 日期选择器值? ("setDate" 不工作)

How can I set jQuery datepicker value ? ("setDate" not working)

我在设置 jQuery 日期选择器日期值时遇到问题。我正在从 sql 数据库中检索日期,然后在格式化后尝试将其设置为日期选择器。 我的 jsp 代码看起来像

<div class="col-md-6 col-sm-6 col-xs-12 form-group">
                        <label>Date de Debut</label><span style="color:red;"></span>
                         <form:input
                            path="roles[0].startDate"
                            class="form-control" 
                            type="date"
                            pattern="dd-mm-yyyy"
                            name="dateDebut" 
                            id="dateDeDebut" 
                            required="true" />
                    </div>

我的 Jquery 代码看起来像

var start = row.roles[0].startDate;
    var date_start = new Date(start);
    var startDate = new Intl.DateTimeFormat('en-GB').format(date_start);//gives me this format "dd/mm/yyyy"

    $('#dateDeDebut').datepicker();
    $('#dateDeDebut').datepicker("setDate", startDate);

我认为问题出在 type="date" 上,因为您也在使用日期选择器,所以只要您需要在 dateDeDebut 上应用日期选择器,只需更改输入的 type

下面是工作演示代码:

$(function() {
//let start be 12-02-2020 
  var start = "12-02-2020";
  var date_start = new Date(start);
  var startDate = new Intl.DateTimeFormat('en-GB').format(date_start); //gives me this format "dd/mm/yyyy"
//changing date to text
  $('input[type=date]').each(function() {
    this.type = "text";
  });
  $('#dateDeDebut').datepicker();
  $('#dateDeDebut').datepicker('setDate', startDate);
 //printing value on console
  console.log($('#dateDeDebut').val());

});
<link rel="stylesheet" href="https://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
<div class="col-md-6 col-sm-6 col-xs-12 form-group">
  <label>Date de Debut</label><span style="color:red;"></span>
  <input path="roles[0].startDate" class="form-control" type="date" pattern="dd-mm-yyyy" name="dateDebut" id="dateDeDebut" required="true" />
</div>