2017-02-04 1 views
1

Так что я использую сценарий jQuery Datepicker на нескольких моих текстовых окнах.jQuery Datepicker показать один формат, отправить другой

$(function() { 
    $(".datepicker").datepicker({ dateFormat: "M d, yy" }).val() 
}); 

Я хотел бы показать date в textbox, как, например, Feb 4, 2017 , но затем отправить его как yy-mm-dd так, чтобы он соответствовал даты в database и дать мне результат.

Возможно ли это? Я использую бритву, и это не проект MVC.

ответ

1

Используйте MomentJS для разбора значения в объекте Moment, а затем отформатируйте его так, как вам нужно.

moment('2-4-17').format('YY-MM-DD'); 

MomentJS

Шаг 1: Вставьте скрипт до завершения </body> тега

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script> 

Шаг 2:

$(function() { 
    $(".datepicker").datepicker({ dateFormat: "M d, yy" }).val() 
}); 

к

$(function() { 

    // Get Date from datepicker 
    var date = $(".datepicker").datepicker({ dateFormat: "M d, yy" }).val(); 

    // Use the date to create a Moment Object and format it so that it can be 
    // used within the databse 
    var databaseDate = moment(date).format('YY-MM-DD'); 

    // Use your correctly formatted date however you want, in this example 
    // we are just console logging it to take a look if it's correctly parsed. 
    console.log(databaseDate); 

}); 
+0

это выглядит действительно хорошо, и умный, но я полный noob в javascript, поэтому я не знаю, как использовать эту строку кода, просто я помещаю его в свой текущий скрипт? –

+0

Нет проблем. Проверьте мой пост для фрагмента кода. Можете ли вы опубликовать фальшивое значение '$ (". Datepicker "). Datepicker ({dateFormat:" M d, yy "}). Val()'? – Win

+0

Святое дерьмо, это потрясающе, огромное спасибо моему человеку! Фантастика! –

0

При инициализации нового DatePicker того времени записи ниже кода, который отображение 4 февраля 2017 этого формат

$(function() { 
    $(".datepicker").datepicker({ dateFormat: "M d, yy" }) 
}); 

В то время извлечения значения из текстового поля и отправить его в базу данных там использовать ниже код

var senddt=$('.datepicker').datepicker("option","dateFormat","yy-mm-dd").val();