I am getting a string date from cookie which returns like this format 2017-11-16. My datepicker dateformat is D, M d, yy e.g Thu, Apr 27, 2017.
if I just set it as $("#m_checkin").datepicker().datepicker("setDate", "2017-11-16"); datepicker functions stop working and it just set 2017-11-16 as an input value. How can I format my date to my datepicker dateformat?
You need to parse date before set date to particular format.
You can see here: https://jsfiddle.net/r1nm5h7k/
$( "#datepicker" ).datepicker({dateFormat: "DD, d MM, yy"});
$( "#datepicker" ).datepicker("setDate", $.datepicker.parseDate( "yy-mm-dd", "2017-11-16" ));
ref : https://api.jqueryui.com/datepicker/#utility-formatDate
You have to setDate with Date object instead of string (to avoid date format issues like you face currently).
So you have to change your code like below:
$("#m_checkin").datepicker().datepicker("setDate", new Date(2017,11,16));