2017-08-11 72 views
0

单击按钮时,将加载模型中某些文本字段的值,然后显示模态。根据点击的按钮,不同的日期被加载到文本字段中。Bootstrap-datepicker在弹出窗口中使用之前的值

<button type="button" class="btn btn-warning btn-xs" id="editTeamButton" startdate="01-02-2017" enddate="31-12-2017" teamid="1" xrefid="19">Edit</button> 

$(document).on("click", "#editTeamButton", function(event){ 
    $('#xrefid').val($(this).attr("xrefid")); 
    $('#editteamid').val($(this).attr("teamid")); 
    $('#editteamstartdate').val($(this).attr("startdate")); 
    $('#editteamenddate').val($(this).attr("enddate")); 
    $('#editTeamModal').modal('show'); 

    $('.datepickereditteam').datepicker({ 
     format: "dd-mm-yyyy", 
     maxViewMode: 3, 
     language: "nl", 
     daysOfWeekHighlighted: "1,2,3,4,5", 
     calendarWeeks: true 
    }); 

}); 

此外,datepicker插件是加载选择一个日期范围。这工作正常第一次,但第二次#editTeamButton被点击不同的值被加载在字段editteamstartdateeditteamenddate。然后当点击一个日期字段时,日期选择器将使用之前在那里的日期,而不是实际输入的日期(由jQuery val()放在那里)。

如何解决这个问题,使datepicker总是使用在点击它的文本字段的日期?我在加载之前先尝试销毁datepicker,但这不起作用。同样的问题。

回答

0

通过使用

$("#editteamstartdate").datepicker("update", $(this).attr("startdate")); 
$("#editteamenddate").datepicker("update", $(this).attr("enddate")); 

代替

$('#editteamstartdate').val($(this).attr("startdate")); 
$('#editteamenddate').val($(this).attr("enddate")); 
固定它