jQuery दिनांक स्वरूपण


185

मैं jQuery का उपयोग करके तारीख को कैसे प्रारूपित कर सकता हूं। मैं नीचे दिए गए कोड का उपयोग कर रहा हूं लेकिन त्रुटि हो रही है:

 $("#txtDate").val($.format.date(new Date(), 'dd M yy'));

कृपया कोई उपाय सुझाएं।


1
Microsoft JScript रनटाइम त्रुटि: '$ .format' शून्य है या वस्तु नहीं है
DotnetSparrow

क्या आपने उस प्लगइन को शामिल किया है जिसमें प्रारूप फ़ंक्शन शामिल हैं?
zzzzBov

39
डरपोक एक लाइनर yyyy-mm-dd के लिए:new Date().toJSON().substring(0,10)
माइक कॉसर

यह fformat है (डबल एफ)
जॉर्बोर सेप

10
चेतावनी! चालाक कोड: new Date().toJSON().substring(0,10)अच्छा काम किया है, लेकिन यह GMT के रूप में तारीख देता है! चूंकि हम GMT से 7 घंटे पीछे हैं, इसलिए मुझे शाम 5:00 बजे के बाद गलत तारीख मिल रही थी। मैं सिर्फ कारण / आह / खोजने के लिए कुछ घंटे बर्बाद कर दिया। संदर्भ
Jayro-GreyBeard

जवाबों:


102

jQuery dateFormat एक अलग प्लगइन है। आपको एक <script>टैग का उपयोग करके स्पष्ट रूप से लोड करने की आवश्यकता है ।


10
@ डोटनेट यकीन है, अन्य कार्यों का उपयोग करते हुए: यहाँ
पेका

33
@Dotnet अगर यह jQuery का उपयोग करके किया जा सकता है, तो वहाँ दिनांक स्वरूपण के लिए jQuery प्लग-इन नहीं होगा?
पेका

1
मैं नहीं बता सकता कि यह मजाक होना चाहिए या नहीं ... यह लगभग शानदार @pekka है। साथ ही, यह सही उत्तर है।
jcolebrand

1
jQuery दिनांकफ़ॉर्मेट jQuery मान्य के साथ काम नहीं करता है। न तो शुद्ध जावास्क्रिप्ट संस्करण।
कुणाल बी।

3
यह विश्वास करना कठिन है कि वेनिला jQuery के पास दिनांक को प्रारूपित करने का कोई कार्य नहीं है। यह सवाल 5 साल पुराना है, क्या अब भी यही है?
felwithe

212

अपने पेज में jquery ui प्लगइन जोड़ें।

 $("#txtDate").val($.datepicker.formatDate('dd M yy', new Date()));

2
यह वह उत्तर है जिसकी मुझे तलाश थी, खासकर जब से मैं jQuery UI का उपयोग कहीं और कर रहा हूं।
नजीफनाब

क्या दिनांक + 2 वर्ष प्राप्त करने का कोई तरीका है?
सर्जस

1
var currentDate = new Date (); currentDate.setFullYear (currentDate.getFullYear () + 2);
१०:३३ पर थुलसीराम

यह एक किटी है कि यह प्रारूपण = एस
थॉमस

4
यहां आधिकारिक डॉक का लिंक है: api.jqueryui.com/datepicker/#utility-formatDate
Guillaume Husta

101

यदि आप jQuery / jQuery प्लगइन का उपयोग नहीं करना चाहते हैं तो एक वैकल्पिक सरल js date () फ़ंक्शन होगा।

उदाहरण के लिए:

var formattedDate = new Date("yourUnformattedOriginalDate");
var d = formattedDate.getDate();
var m =  formattedDate.getMonth();
m += 1;  // JavaScript months are 0-11
var y = formattedDate.getFullYear();

$("#txtDate").val(d + "." + m + "." + y);

देखें: जावास्क्रिप्ट का उपयोग करके समय और तारीख को प्रारूपित करने के 10 तरीके

यदि आप दिन / महीने के लिए अग्रणी शून्य जोड़ना चाहते हैं, तो यह एक आदर्श उदाहरण है: जावास्क्रिप्ट तिथि करने के लिए अग्रणी शून्य जोड़ें

और यदि आप अग्रणी शून्य के साथ समय जोड़ना चाहते हैं, तो यह प्रयास करें: getMinutes () 0-9 - दो संख्याओं के साथ कैसे?


यह @ सेकंड के रूप में सेकंड जोड़ने के लिए आसान हो जाएगा
wpcoder

यह तब तक अच्छा है जब तक उपयोगकर्ता हाल की तारीख या तारीख को Dateवस्तु में खिलाया जाना चाहता है । उसी प्रारूप में दिनांक प्राप्त करने के बारे में क्या है लेकिन खिलाया तारीख से 6 महीने पहले ??
संजोक गुरुंग

31

यहाँ वास्तव में एक बुनियादी कार्य है जिसे मैंने किसी बाहरी प्लग इन की आवश्यकता नहीं है:

$.date = function(dateObject) {
    var d = new Date(dateObject);
    var day = d.getDate();
    var month = d.getMonth() + 1;
    var year = d.getFullYear();
    if (day < 10) {
        day = "0" + day;
    }
    if (month < 10) {
        month = "0" + month;
    }
    var date = day + "/" + month + "/" + year;

    return date;
};

उपयोग:

$.date(yourDateObject);

परिणाम:

dd/mm/yyyy

27

थुलसीराम, मैं आपका सुझाव पसंद करता हूं। यह मेरे लिए कुछ अलग वाक्यविन्यास / संदर्भ में अच्छा काम करता है:

var dt_to = $.datepicker.formatDate('yy-mm-dd', new Date());

यदि आप JQuery UI से डेटपिकर का उपयोग करने का निर्णय लेते हैं , तो सुनिश्चित करें कि आप अपने दस्तावेज़ के <head> अनुभाग में उचित संदर्भों का उपयोग करते हैं:

<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" />

<script src="http://code.jquery.com/jquery-1.8.3.js"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script> 

25

मैं मोमेंट जेएस का उपयोग कर रहा हूं । बहुत मददगार और उपयोग में आसान है।

var date = moment(); //Get the current date
date.format("YYYY-MM-DD"); //2014-07-10

मैं user3812343 को समाप्‍त करता हूं! पल जेएस महान है - उन लोगों द्वारा अवशोषित करना बहुत आसान है जो .NET सिंटैक्स के साथ काम करते हैं।
डोमिनिक रास

वर्ष माह दिन घंटे मिनट दूसरे में की जरूरत है?
चैतन्य देसाई

15

मुझे उम्मीद है कि यह कोड आपकी समस्या को ठीक कर देगा।

var d = new Date();

var curr_day = d.getDate();
var curr_month = d.getMonth();
var curr_year = d.getFullYear();

var curr_hour = d.getHours();
var curr_min = d.getMinutes();
var curr_sec = d.getSeconds();

curr_month++ ; // In js, first month is 0, not 1
year_2d = curr_year.toString().substring(2, 4)

$("#txtDate").val(curr_day + " " + curr_month + " " + year_2d)

7

बस इस का उपयोग करें:

var date_str=('0'+date.getDate()).substr(-2,2)+' '+('0'+date.getMonth()).substr(-2,2)+' '+('0'+date.getFullYear()).substr(-2,2);

1
ध्यान दें, यह आपको अतीत में एक महीने की एक तारीख देता है (जब तक कि जनवरी में इसे एक्सेस नहीं किया जाता है, इस मामले में यह आपको महीने के लिए '00' देता है) क्योंकि Date.getMonth () एक शून्य-आधारित सूचकांक है।
जयबेरु

7

यदि आप jquery ui का उपयोग कर रहे हैं तो आप इसे नीचे की तरह उपयोग कर सकते हैं, आप अपना स्वयं का दिनांक प्रारूप निर्दिष्ट कर सकते हैं

$.datepicker.formatDate( "D dd-M-yy", new Date()) // Output "Fri 08-Sep-2017"

7

इस फ़ंक्शन को अपने में जोड़ें <script></script>और जहां से आप कभी भी चाहें उसमें कॉल करें<script></script>

<script>

function GetNow(){
    var currentdate = new Date(); 
    var datetime = currentdate.getDate() + "-"
            + (currentdate.getMonth()+1)  + "-" 
            + currentdate.getFullYear() + " "  
            + currentdate.getHours() + ":"  
            + currentdate.getMinutes() + ":" 
            + currentdate.getSeconds();
    return datetime;
}

window.alert(GetNow());

</script>

या आप बस Jquery का उपयोग कर सकते हैं जो स्वरूपण सुविधाएं भी प्रदान करता है: -

window.alert(Date.parse(new Date()).toString('yyyy-MM-dd H:i:s'));

मुझे दूसरा विकल्प पसंद है। यह एक ही बार में सभी मुद्दों को हल करता है।


1
वह दूसरा विकल्प मुझे "मूलांक तर्क 2 और 36 के बीच Number.toString" पर होना चाहिए। यह दुर्घटनाग्रस्त हो जाता है।
IRGeekSauce

6

हालांकि यह सवाल कुछ साल पहले पूछा गया था, एक jQuery प्लगइन की आवश्यकता नहीं है, बशर्ते कि प्रश्न में दिनांक मान प्रारूप के साथ एक स्ट्रिंग है mm/dd/yyyy(जैसे कि तारीख-पिकर का उपयोग करते समय);

var birthdateVal = $('#birthdate').val();
//birthdateVal: 11/8/2014

var birthdate = new Date(birthdateVal);
//birthdate: Sat Nov 08 2014 00:00:00 GMT-0500 (Eastern Standard Time)

5

आप नए उपयोगकर्ता jQuery फ़ंक्शन 'getDate' जोड़ सकते हैं

JSFiddle: getDate jQuery

या आप कोड स्निपेट चला सकते हैं। बस इस पोस्ट के नीचे "रन कोड स्निपेट" बटन दबाएं।

// Create user jQuery function 'getDate'
(function( $ ){
   $.fn.getDate = function(format) {

	var gDate		= new Date();
	var mDate		= {
	'S': gDate.getSeconds(),
	'M': gDate.getMinutes(),
	'H': gDate.getHours(),
	'd': gDate.getDate(),
	'm': gDate.getMonth() + 1,
	'y': gDate.getFullYear(),
	}

	// Apply format and add leading zeroes
	return format.replace(/([SMHdmy])/g, function(key){return (mDate[key] < 10 ? '0' : '') + mDate[key];});

	return getDate(str);
   }; 
})( jQuery );


// Usage: example #1. Write to '#date' div
$('#date').html($().getDate("y-m-d H:M:S"));

// Usage: ex2. Simple clock. Write to '#clock' div
function clock(){
	$('#clock').html($().getDate("H:M:S, m/d/y"))
}
clock();
setInterval(clock, 1000); // One second

// Usage: ex3. Simple clock 2. Write to '#clock2' div
function clock2(){

	var format = 'H:M:S'; // Date format
	var updateInterval = 1000; // 1 second
	var clock2Div	= $('#clock2'); // Get div
	var currentTime	= $().getDate(format); // Get time
	
	clock2Div.html(currentTime); // Write to div
	setTimeout(clock2, updateInterval); // Set timer 1 second
	
}
// Run clock2
clock2();

// Just for fun
// Usage: ex4. Simple clock 3. Write to '#clock3' span

function clock3(){

	var formatHM = 'H:M:'; // Hours, minutes
	var formatS = 'S'; // Seconds
	var updateInterval = 1000; // 1 second
	var clock3SpanHM	= $('#clock3HM'); // Get span HM
	var clock3SpanS	= $('#clock3S'); // Get span S
	var currentHM	= $().getDate(formatHM); // Get time H:M
	var currentS	= $().getDate(formatS); // Get seconds
	
	clock3SpanHM.html(currentHM); // Write to div
	clock3SpanS.fadeOut(1000).html(currentS).fadeIn(1); // Write to span
	setTimeout(clock3, updateInterval); // Set timer 1 second
	
}
// Run clock2
clock3();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>

<div id="date"></div><br>
<div id="clock"></div><br>
<span id="clock3HM"></span><span id="clock3S"></span>

का आनंद लें!


4

आप इस स्निपेट का उपयोग कर सकते हैं

$('.datepicker').datepicker({
  changeMonth: true,
  changeYear: true,
  yearRange: '1900:+0',
  defaultDate: '01 JAN 1900',
  buttonImage: "http://www.theplazaclub.com/club/images/calendar/outlook_calendar.gif",
  dateFormat: 'dd/mm/yy',
  onSelect: function() {
    $('#datepicker').val($(this).datepicker({
      dateFormat: 'dd/mm/yy'
    }).val());
  }
});
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

<p>
  selector: <input type="text" class="datepicker">
</p>
<p>
  output: <input type="text" id="datepicker">
</p>


4

बस हम तारीख को प्रारूपित कर सकते हैं, जैसे

var month = date.getMonth() + 1;
var day = date.getDate();
var date1 = (('' + day).length < 2 ? '0' : '') + day + '/' + (('' + month).length < 2 ? '0' : '') + month + '/' + date.getFullYear();
$("#txtDate").val($.datepicker.formatDate('dd/mm/yy', new Date(date1)));

जहां "तारीख" किसी भी प्रारूप में एक तारीख है।



1

डेट पिकर बनाते समय dateFormat विकल्प का उपयोग करें।

$("#startDate").datepicker({
                    changeMonth: true,
                    changeYear: true,
                    showButtonPanel: true,
                    dateFormat: 'yy/mm/dd'
                });

1

आप प्लगइन के बिना नीचे दिए गए कोड का उपयोग कर सकते हैं।

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script>
$( function() {
    //call the function on page load
	$( "#datepicker" ).datepicker();
    //set the date format here
    $( "#datepicker" ).datepicker("option" , "dateFormat", "dd-mm-yy");
	
    // you also can use 
    // yy-mm-dd
    // d M, y
    // d MM, y
    // DD, d MM, yy
    // &apos;day&apos; d &apos;of&apos; MM &apos;in the year&apos; yy (With text - 'day' d 'of' MM 'in the year' yy)
	} );
 </script>

Pick the Date: <input type="text" id="datepicker">


1

इसने मेरे लिए मामूली संशोधन और बिना किसी प्लगइन के काम किया

इनपुट: बुध अप्रैल 11 2018 00:00:00 GMT + 0000

$.date = function(orginaldate) { 
    var date = new Date(orginaldate);
    var day = date.getDate();
    var month = date.getMonth() + 1;
    var year = date.getFullYear();
    if (day < 10) {
        day = "0" + day;
    }
    if (month < 10) {
        month = "0" + month;
    }
    var date =  month + "/" + day + "/" + year; 
    return date;
};

$.date('Wed Apr 11 2018 00:00:00 GMT+0000')

आउटपुट: 04/11/2018


0

अगर मैं 2 साल पहले पूछे गए किसी प्रश्न का उत्तर देने की अनुमति देता हूं तो मुझे बिल्कुल यकीन नहीं है क्योंकि स्टैकओवरफ्लो पर यह मेरा पहला जवाब है लेकिन, यहां मेरा समाधान है;

यदि आपने एक बार अपने MySQL डेटाबेस से तारीख को पुनः प्राप्त कर लिया है, तो इसे विभाजित करें और फिर विभाजित मूल्यों का उपयोग करें।

$(document).ready(function () {
    var datefrommysql = $('.date-from-mysql').attr("date");
    var arraydate = datefrommysql.split('.');
    var yearfirstdigit = arraydate[2][2];
    var yearlastdigit = arraydate[2][3];
    var day = arraydate[0];
    var month = arraydate[1];
    $('.formatted-date').text(day + "/" + month + "/" + yearfirstdigit + yearlastdigit);
});

यहाँ एक बेला है


0

यहाँ पूर्ण कोड उदाहरण है जो मैंने ब्राउज़र पर दिखाया है, आशा है कि आप भी सहायक धन्यवाद।

<!doctype html>
<html lang="en">
   <head>
      <meta charset="utf-8">
      <title>jQuery UI Datepicker functionality</title>
      <link href="http://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css" rel="stylesheet">
      <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
      <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
      <!-- Javascript -->
      <script>
         $(function() {
            $( "#datepicker" ).datepicker({
                minDate: -100,
                maxDate: "+0D",
                dateFormat: 'yy-dd-mm',
                onSelect: function(datetext){
                    $(this).val(datetext);
                },
            });
         });
      </script>
   </head>
   <body>
      <!-- HTML --> 
      <p>Enter Date: <input type="text" id="datepicker"></p>
   </body>
</html>


-1

यू इस कोडिंग का उपयोग कर सकते हैं

$('[name="tgllahir"]').val($.datepicker.formatDate('dd-mm-yy', new Date(data.tgllahir)));

2
कोड-केवल उत्तर हतोत्साहित किए जाते हैं क्योंकि वे यह नहीं समझाते हैं कि वे मुद्दे को कैसे हल करते हैं। कृपया यह बताने के लिए अपने उत्तर को अपडेट करें कि यह पहले से स्वीकार किए गए कई अन्य स्वीकृत और उत्क्रमित उत्तरों पर कैसे सुधार करता है। साथ ही, यह प्रश्न 6 साल पुराना है, आपके प्रयासों को उन उपयोगकर्ताओं द्वारा अधिक सराहा जाएगा जिनके पास हाल ही में अनुत्तरित प्रश्न हैं। कृपया समीक्षा करें कि मैं एक अच्छा उत्तर कैसे लिखूं
15

1
उत्तर में उल्लेख नहीं किया गया कि jQuery यूआई की आवश्यकता थी
sean2078
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.