รบกวนทีครับ พอจะมี code datepicker ที่แสดง format เวลาคลิกแบบ 17 ม ค 2553 บ้างมั้ยครับ รบกวนทีครับ
jquery datepicker แต่แทรกให้มี div ที่แปลงเป็นภาษาไทย ลอยทับ inputbox อีกที
Date :
2010-07-19 12:01:46
By :
2123
อันนี้ เลย ครับ เพิ่ง เจอ มา สดๆ เลยครับ
Code (JavaScript)
<HTML>
<HEAD>
<TITLE>datepicker </TITLE>
<script language="javascript">
function clsCalendar(){
//#######################################
// Power by Dan2k
// email : [email protected]
// date: 05/02/2552
// #######################################
this.months=new Array(" มกราคม "," กุมภาพันธ์ "," มีนาคม "," เมษายน "," พฤษภาคม "," มิถุนายน " ," กรกฏาคม "," สิงหาคม "," กันยายน "," ตุลาคม "," พฤศจิกายน "," ธันวาคม ");
this.days =new Array("วัน อาทิตย์ ที่ ","วัน จันทร์ ที่ ","วัน อังคาร ที่ ","วัน พุธ ที่ ","วัน พฤหัสบดี ที่ ","วัน ศุกร์ ที่ ","วัน เสาร์ ที่ ");
this.date=new Date();//วันเดือนปี ปัจจุบัน
this.day=this.date.getDay();//วันที่ปัจจุบัน ในสัปดห์ อ - ส (เริ่มจาก 0-6)
this.d=this.date.getDate();//;วันที่ปัจจุบัน เริ่มจาก 1
this.m=this.date.getMonth();//เดือน 0-11
this.y=this.date.getYear()+543;//ปี คศ
this.realy=this.y;// เก็บค่าปีปัจจุวัน
this.reald=this.d;//เก็บค่าวันที่ปัจจุบัน
this.realm=this.m;//เก็บค่าเดือนปัจจุบัน
this.hh=this.date.getHours();//เก็บค่าชั่วโมง ส่วนนี้ไม่ได้ใช้
this.mm=this.date.getMinutes();//เก็บค่านาที ส่วนนี้ไม่ได้ใช
this.ss=this.date.getSeconds();//เก็บค่าวินาที ส่วนนี้ไม่ได้ใช
this.object="";// obj ที่เราต้องการ ส่งค่าวันที่ไปให้ เช่น input box
this.objID="";//ชื่อ เป็นสตริงชื่อ ของ obj ที่เราต้องการส่งค่าวันที่ไปให้ เช่นชื่อ ของ input box
this.format="";
this.clsName="";
this.calendar=function(){// el_name คือ ชื่อของ text box ที่เอาไว้ใส่ วันที่
el_name=this.objID;
var outString="";
// ตั้ง วัน ที่ เวลา ให้ตรง 02 ก็ เกี่ยวข้องด้วย
today=((this.m*1)+2)+"/01/"+this.y;//วันแรกของเดือน
last=((this.m*1)+2)+"/0/"+this.y;// หาวันสุดท้ายของเดือน
today_date=new Date(today);//นำมาสร้างเป็นวันที่
today_day=today_date.getDay();//นำมาหาวันที่
last_date=new Date(last);//นำมาสร้างวันที่
lastday=last_date.getDate();// หาวันที่สุดท้าย
count=1; // วันที่เริ่มนับจากวันที่ 1
week=0;// แทนวันในสัปดาห์ 0-6 ( อ - ส )
fax=0;
outString=outString+"<table width='150px' style='font-family:ms sans serif,sans serif;font-size:15px; line-height:14px; border-style:solid; border-collapse:collapse; border-width:1px;border-color:#499BEE;background-color:#EEEEEE;table-layout:fixed;'>";
outString=outString+"<tr bgcolor=#006699 height=17px>";
outString=outString+"<td colspan=7 align=center height=20px >";
outString=outString+"<select style='font-family:ms sans serif;font-size:10px;width:95px' onchange='"+this.clsName+".mchange(this.value)'>";
for (var intLoop = 0; intLoop < this.months.length; intLoop++){
outString=outString+"<OPTION value="+intLoop+" " +(this.m == intLoop ? "Selected" : "") + ">" + this.months[intLoop]+"</option>";
}
outString=outString+"</select>";
outString=outString+"<select style='font-family:ms sans serif;font-size:10px;' onchange='"+this.clsName+".ychange(this.value)'>";
for (var intLoop=2443; intLoop < this.realy+100; intLoop++){
outString=outString+"<OPTION value="+intLoop+" " + (this.y == intLoop ? "Selected" : "") + ">" + intLoop+"</option>";
}
outString=outString+"</select >";
outString=outString+"<tr>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#FE7E8B'>จ</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#FFFFCC'>อ</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#FFCCFF'>พ</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#99FFCC'>พฤ</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#FFCC99'>ศ</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#CCFFFF'>ส</td>";
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;' bgcolor='#CC99FF'>อ</td>";
outString=outString+"</tr>";
while(count <= lastday){ // คำนวนจากวันที่ 1- วันที่สุดท้ายของเดือน
if(week>6){ // หนึ่งอาทิตย์มี 7 วัน 0-6
week=0;
}
if(week==0){// วันแรกของสัปดาห์ ให้ ขึ้นแถวใหม่
outString=outString+"<tr>";
}
// แสดง Tool Tip
if(week == today_day || fax==1){ // today_day คือ วัน อ - ส จากค่าที่เราใส่วันที่สร้างไป
fax=1
titlestring =this.days[week]+count+" "+this.months[this.m]+" พ.ศ. "+((this.y*1))//+543)//เป็นวันที่แสดงตรง title
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px; border-style:solid;order-collapse:collapse;border-width:1px;width:15px;text-align:right;' onclick='"+this.clsName+".send("+count+","+this.m+","+this.y+",1);' title='"+ titlestring +"' onmouseover=\"this.style.backgroundColor='#0099CC';\" onmouseout=\"this.style.backgroundColor='';\" >";
if(count==this.d && this.m==this.date.getMonth() && this.y==this.date.getYear()+543){
outString=outString+"<font color=red>";
}
outString=outString+""+count;
if(count==this.d){
outString=outString+"</font>";
}
outString=outString+"</td>";
count++;
}else{
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px; border-style:solid;order-collapse:collapse;border-width:1px;width:15px;text-align:right;'> </td>";
}
if(week==6 || count>lastday){
if(count>lastday ){
for(i=week+1;i<=6;i++){
outString=outString+"<td style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px; border-style:solid;order-collapse:collapse;border-width:1px;width:15px;text-align:right;'> </td>";
}
}
outString=outString+"</tr>";
}
week++;
}
outString=outString+"<tr>";
outString=outString+"<td colspan=7 align=right bgcolor='#333399'><span id=today style='font-family:ms sans serif;font-size:10px;color:#FFFFFF;font-weight:bold;'> </span><span onclick='document.all.calendar.style.display=\"none\" ;' style='font-family:ms sans serif;font-size:10px;color:#ffffff;font-weight:bold;text-align:right;cursor:hand;'> | X</span></td>";
outString=outString+"</tr>";
//ถ้าต้องการแสดงรุปแบบวันที่ได้ก็เปิด ต้องไปเพิม รุปแบบใน send function ด้วย
/*
outString=outString+"<tr>";
outString=outString+"<td colspan=7 style='font-family:ms sans serif,sans serif;font-size:14px;line-height:14px;border-style:solid;border-collapse:collapse;border-width:1px;width:15px;text-align:center;'><span style='font-family:ms sans serif;font-size:10px;color:#669999;font-weight:bold;'>รูปแบบ:</span>";
outString=outString+"<select onchange='"+this.clsName+".setFormat(this.value);send("+this.d+","+this.m+","+this.y+",2);' style='font-family:ms sans serif;font-size:10px;width:100px;' >"
outString=outString+"<option value=0 "+(this.format=="0"?" selected ":"")+">dd-mm-yy</option>";
outString=outString+"<option value=1 "+(this.format=="1"?" selected ":"")+">dd-mm-yyyy</option>";
outString=outString+"<option value=2 "+(this.format=="2"?" selected ":"")+">d-m-yy</option>";
outString=outString+"<option value=3 "+(this.format=="3"?" selected ":"")+">d-m-yyyy</option>";
outString=outString+"<option value=4 "+(this.format=="4"?" selected ":"")+">yy-mm-dd</option>";
outString=outString+"<option value=5 "+(this.format=="5"||this.format==""?" selected ":"")+">yyyy-mm-dd</option>";
outString=outString+"<option value=6 "+(this.format=="6"?" selected ":"")+">yy-m-d</option>";
outString=outString+"<option value=7 "+(this.format=="7"?" selected ":"")+"> yyyy-m-d</option>";
outString=outString+"</select>"
outString=outString+"</td>";
outString=outString+"</tr>";
*/
outString=outString+"</table>";
document.all.calendar.innerHTML=outString;
this.setOffset(el_name);
this.send(this.reald,this.realm,this.realy,2)
}//end function
this.mchange=function(vmonth){
this.m=vmonth;
this.set('n');
}
this.ychange=function(vyear){
this.y=vyear
this.set('n');
}
this.send=function(dd,mm,yy,tset){ //เพิ่มรูปแบบวันนี้ได้จากตรงนี้
// รูปแบบของวันที่มี
// 0 dd-mm-yy
// 1 dd-mm-yyyy
// 2 d-m-yy
// 3 d-m-yyyy
// 4 yy-mm-dd
// 5 yyyy-mm-dd
// 6 yy-m-d
// 7 yyyy-m-d
if(dd<10){
ddd="0"+dd;
}else{
ddd=dd;
}
mm++;
if(mm<10){
mmm="0"+mm;
}else{
mmm=mm;
}
yyy=yy+"";
yyy=yyy.substring(2,4);
switch (this.format)
{
case "0":
strdate=dd+"-"+mm+"-"+yyy;
break;
case "1":
strdate=dd+"-"+mm+"-"+yyy;
break;
case "2":
strdate=dd+"-"+mm+"-"+yyy;
break;
case "3":
strdate=dd+"-"+mm+"-"+yy;
break;
case "4":
strdate=yyy+"-"+mmm+"-"+ddd;
break;
case "5":
strdate=yy+"-"+mmm+"-"+ddd; //yyyy-mm-dd
break;
case "6":
strdate=yyy+"-"+mm+"-"+dd;
break;
case "7":
strdate=yy+"-"+mm+"-"+dd;
break;
default:
// strdate=yy+"-"+mmm+"-"+ddd;
//เปลี่ยน รูปแบ วันที่ตรงนี้
strdate=dd+"-"+mmm+"-"+yy;
//dd-mm-yyyy
}
if(tset==1){
this.object.value=strdate;
document.all.calendar.style.display="none";
}else{
document.all.today.innerText="ToDay: "+strdate ;
}
}
this.set=function(ch){
if(ch=="y"){
this.m=this.date.getMonth();
this.y=this.date.getYear();
}
this.calendar();
document.all.calendar.style.display="";
}
this.setOffset=function(el_name){
var left;
var top;
left = 0;
top = 0;
var elem = document.all[el_name];
do
{
left += elem.offsetLeft;
top += elem.offsetTop;
if (elem.tagName == "BODY")
break;
elem = elem.offsetParent;
} while (1 > 0);
document.all.calendar.style.pixelLeft=left;
document.all.calendar.style.pixelTop=top+document.all[el_name].offsetHeight+1;
document.all.calendar.style.display='inline';
}
this.setFormat=function(type){
this.format=type;
}
this.genCalendar=function(el_name,tformat,clsName){
// สร้าง div ขึ้นมาชื่อว่า calendar
if(typeof document.all.calendar=="undefined"){
var aElement=document.createElement("<div id='calendar' style='position:absolute;display:none;width:80px;height:60px;background-color:red' />");
document.body.insertBefore(aElement);
}
this.objID=el_name;
this.object=document.all[el_name];
this.format=tformat;
this.clsName=clsName;
this.calendar();
}
}//end clsCalendar
var calendar=new clsCalendar();
</script>
</HEAD>
<BODY>
<form name=f>
<span valign=bottom>
<input type="text" onClick="calendar.genCalendar('p_sdatetest','','calendar');" name="p_sdatetest" class="xinput" readonly value="">
<input type="button" on onClick="calendar.genCalendar('p_sdatetest','','calendar');" value="คลิ๊ก">
</span>
</form>
</BODY>
</HTML>
Date :
2010-07-19 12:16:30
By :
ลุงหนุ่ม
แล้วถ้าทำให้ format ของเดือนออกเป็นตัวอักษรหลังจากเราคลิกเลือกมาแสดงใน textbox แล้ว เช่น 10 ก ค 2553 ต้องทำอย่างไรครับ
Date :
2010-07-19 12:51:22
By :
coollyheart
Date :
2010-07-19 15:40:58
By :
coollyheart
ลองดู น่ะ ครับ
กำหนดรูปแบบได้ มีตัวอย่าง ให้ใช้ งานแบบที่ 1 น่ะครับ ลองดู
>>>>>>>>>https://www.thaicreate.com/free-web-script/javascript-calendar-datepicker.html <<<<<<<<<<<<<<<
Code (JavaScript)
if(!format) { // the default date format to use - can be customized to the current locale
format = 'd/m/Y'; }
LZ = function(x) {return(x < 0 || x > 9 ? '' : '0') + x};
var MONTH_NAMES = new Array('January','February','March','April','May','June','July','August','September','October','November','December','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
var DAY_NAMES = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sun','Mon','Tue','Wed','Thu','Fri','Sat');
format = format + "";
var result="";
var i_format=0;
var c="";
var token="";
var y=this.getFullYear().toString();
var M=this.getMonth()+1;
var d=this.getDate();
var E=this.getDay();
var H=this.getHours();
var m=this.getMinutes();
var s=this.getSeconds();
var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;
// Convert real this parts into formatted versions
var value = new Object();
//if (y.length < 4) {y=''+(y-0+1900);}
Date :
2010-11-17 21:23:39
By :
yainakrub
Load balance : Server 02