Kesalahan runtime Microsoft JScript: '$ .format' adalah null atau bukan objek
DotnetSparrow
sudahkah Anda memasukkan plugin yang menyertakan fungsi format?
zzzzBov
39
Menyelinap satu liner untuk yyyy-mm-dd:new Date().toJSON().substring(0,10)
Mike Causer
it's fformat (double f)
jorrebor
10
PERINGATAN! kode apik: new Date().toJSON().substring(0,10)bekerja dengan baik, tetapi mengembalikan tanggal sebagai GMT! Karena kami 7 jam lebih lambat dari GMT, saya mendapatkan tanggal yang salah setelah jam 5:00 sore. Saya hanya membuang waktu beberapa jam untuk menemukan penyebabnya / menghela nafas /. Referensi
JayRO-GreyBeard
Jawaban:
103
jQuery dateFormat adalah plugin terpisah. Anda harus memuatnya secara eksplisit menggunakan <script>tag.
Alternatifnya adalah fungsi js date () sederhana, jika Anda tidak ingin menggunakan plugin jQuery / jQuery:
misalnya:
var formattedDate =newDate("yourUnformattedOriginalDate");var d = formattedDate.getDate();var m = formattedDate.getMonth();
m +=1;// JavaScript months are 0-11var y = formattedDate.getFullYear();
$("#txtDate").val(d +"."+ m +"."+ y);
akan berguna untuk menambahkan detik seperti yang dilakukan
@sein
Ini bagus sampai pengguna ingin tanggal terakhir atau tanggal dimasukkan ke Dateobjek. Bagaimana dengan mendapatkan tanggal dalam format yang sama tetapi 6 bulan sebelum tanggal pemberian?
Sanjok Gurung
31
Inilah fungsi yang sangat mendasar yang baru saja saya buat yang tidak memerlukan plugin eksternal:
$.date =function(dateObject){var d =newDate(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;};
Catatan, ini memberi Anda tanggal satu bulan di masa lalu (kecuali jika diakses pada bulan Januari yang memberi Anda '00' untuk bulan itu) karena date.getMonth () adalah indeks berbasis nol.
jaybrau
7
Tambahkan fungsi ini ke Anda <script></script>dan panggil dari tempat yang Anda inginkan<script></script>
Pilihan ke-2 memberi saya "argumen radix harus antara 2 dan 36 di Number.toString". Itu crash.
IRGeekSauce
6
Meskipun pertanyaan ini ditanyakan beberapa tahun yang lalu, plugin jQuery tidak diperlukan lagi asalkan nilai tanggal dalam pertanyaan adalah string dengan format mm/dd/yyyy(seperti ketika menggunakan pemilih tanggal);
var birthdateVal = $('#birthdate').val();//birthdateVal: 11/8/2014var birthdate =newDate(birthdateVal);//birthdate: Sat Nov 08 2014 00:00:00 GMT-0500 (Eastern Standard Time)
Atau Anda dapat menjalankan cuplikan kode. Cukup tekan tombol "Jalankan cuplikan kode" di bawah posting ini.
// Create user jQuery function 'getDate'(function( $ ){
$.fn.getDate =function(format){var gDate =newDate();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 zeroesreturn 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' divfunction clock(){
$('#clock').html($().getDate("H:M:S, m/d/y"))}
clock();
setInterval(clock,1000);// One second// Usage: ex3. Simple clock 2. Write to '#clock2' divfunction clock2(){var format ='H:M:S';// Date formatvar updateInterval =1000;// 1 secondvar clock2Div = $('#clock2');// Get divvar 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' spanfunction clock3(){var formatHM ='H:M:';// Hours, minutesvar formatS ='S';// Secondsvar updateInterval =1000;// 1 secondvar clock3SpanHM = $('#clock3HM');// Get span HMvar clock3SpanS = $('#clock3S');// Get span Svar currentHM = $().getDate(formatHM);// Get time H:Mvar 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();
Anda dapat menggunakan kode di bawah ini tanpa plugin.
<scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><scriptsrc="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script><linkrel="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// 'day' d 'of' MM 'in the year' yy (With text - 'day' d 'of' MM 'in the year' yy)});</script>
Pick the Date: <inputtype="text"id="datepicker">
Saya tidak yakin apakah saya diizinkan untuk menjawab pertanyaan yang diajukan 2 tahun yang lalu karena ini adalah jawaban pertama saya di stackoverflow tetapi, inilah solusi saya;
Jika Anda pernah mengambil tanggal dari database MySQL Anda, pisahkan dan kemudian gunakan nilai yang dibagi.
Jawaban khusus kode tidak disarankan karena tidak menjelaskan bagaimana mereka menyelesaikan masalah. Harap perbarui jawaban Anda untuk menjelaskan bagaimana hal ini meningkat pada banyak jawaban lain yang diterima dan terunggah pertanyaan ini. Selain itu, pertanyaan ini berumur 6 tahun, usaha Anda akan lebih dihargai oleh pengguna yang memiliki pertanyaan yang belum terjawab baru-baru ini. Harap tinjau Bagaimana cara menulis jawaban yang baik .
new Date().toJSON().substring(0,10)
new Date().toJSON().substring(0,10)
bekerja dengan baik, tetapi mengembalikan tanggal sebagai GMT! Karena kami 7 jam lebih lambat dari GMT, saya mendapatkan tanggal yang salah setelah jam 5:00 sore. Saya hanya membuang waktu beberapa jam untuk menemukan penyebabnya / menghela nafas /. ReferensiJawaban:
jQuery dateFormat adalah plugin terpisah. Anda harus memuatnya secara eksplisit menggunakan
<script>
tag.sumber
tambahkan plugin jquery ui di halaman Anda.
sumber
Alternatifnya adalah fungsi js date () sederhana, jika Anda tidak ingin menggunakan plugin jQuery / jQuery:
misalnya:
lihat: 10 cara untuk memformat waktu dan tanggal menggunakan JavaScript
Jika Anda ingin menambahkan nol di awal untuk hari / bulan, ini adalah contoh sempurna: Javascript menambahkan nol di awal
dan jika Anda ingin menambah waktu dengan memimpin nol coba ini: getMinutes () 0-9 - bagaimana dengan dua angka?
sumber
Date
objek. Bagaimana dengan mendapatkan tanggal dalam format yang sama tetapi 6 bulan sebelum tanggal pemberian?Inilah fungsi yang sangat mendasar yang baru saja saya buat yang tidak memerlukan plugin eksternal:
Menggunakan:
Hasil:
sumber
ThulasiRam, saya lebih suka saran Anda. Ini berfungsi baik untuk saya dalam sintaks / konteks yang sedikit berbeda:
Jika Anda memutuskan untuk menggunakan datepicker dari JQuery UI , pastikan Anda menggunakan referensi yang tepat di bagian <head> dokumen Anda:
sumber
Saya menggunakan Momen JS . Sangat membantu dan mudah digunakan.
sumber
Saya harap kode ini akan memperbaiki masalah Anda.
sumber
Jika Anda menggunakan jquery ui maka Anda dapat menggunakannya seperti di bawah ini, Anda dapat menentukan format tanggal Anda sendiri
sumber
Gunakan ini saja:
sumber
Tambahkan fungsi ini ke Anda
<script></script>
dan panggil dari tempat yang Anda inginkan<script></script>
atau Anda dapat menggunakan Jquery yang menyediakan fasilitas format juga: -
Saya suka pilihan kedua. Ini menyelesaikan semua masalah dalam sekali jalan.
sumber
Meskipun pertanyaan ini ditanyakan beberapa tahun yang lalu, plugin jQuery tidak diperlukan lagi asalkan nilai tanggal dalam pertanyaan adalah string dengan format
mm/dd/yyyy
(seperti ketika menggunakan pemilih tanggal);sumber
Anda dapat menambahkan fungsi jQuery pengguna baru 'getDate'
JSFiddle: getDate jQuery
Atau Anda dapat menjalankan cuplikan kode. Cukup tekan tombol "Jalankan cuplikan kode" di bawah posting ini.
Nikmati!
sumber
Anda dapat menggunakan cuplikan ini
sumber
Cukup kita dapat memformat tanggal seperti,
Di mana "tanggal" adalah tanggal dalam format apa pun.
sumber
Lihatlah di sini:
https://github.com/mbitto/jquery.i18Sekarang
Plugin jQuery ini membantu Anda untuk memformat dan menerjemahkan tanggal dan waktu sesuai keinginan Anda.
sumber
Gunakan opsi dateFormat saat membuat pemilih tanggal.
sumber
Anda dapat menggunakan kode di bawah ini tanpa plugin.
sumber
Ini bekerja untuk saya dengan sedikit modifikasi dan tanpa plugin apa pun
Input: Rab 11 Apr 2018 00:00:00 GMT + 0000
Output: 04/11/2018
sumber
Saya tidak yakin apakah saya diizinkan untuk menjawab pertanyaan yang diajukan 2 tahun yang lalu karena ini adalah jawaban pertama saya di stackoverflow tetapi, inilah solusi saya;
Jika Anda pernah mengambil tanggal dari database MySQL Anda, pisahkan dan kemudian gunakan nilai yang dibagi.
Ini biola .
sumber
Berikut ini adalah contoh kode lengkap yang saya tampilkan di browser, Semoga Anda juga berterima kasih.
sumber
Anda dapat mencoba http://www.datejs.com/
BR
sumber
Anda dapat menggunakan kode ini
sumber