Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > บทความจากสมาชิก > การแก้ไข jQuery Datepicker ให้เป็นภาษาไทย



 
Clound SSD Virtual Server

การแก้ไข jQuery Datepicker ให้เป็นภาษาไทย

การแก้ไข jQuery Datepicker ให้เป็นภาษาไทย จากกระทู้นี้ [สอบถามเกี่ยว date format ค่ะ ควรใช้ date หรือ date/time คะ] ที่ผมได้ช่วยน้องคนหนึ่งแก้ไข datepicker ให้แสดงผลเป็นภาษาไทย จึงอยากเขียนเป็นบทความอธิบาย "วิธีแก้" ครับ

สอบถามเกี่ยว date format ค่ะ ควรใช้ date หรือ date/time คะ


jquery datepicker
http://jqueryui.com/datepicker/ เป็น plugin ตัวหนึ่งสำหรับ jquery
ซึ่งโดยปกติจะแสดงผลเป็นภาษาอังกฤษ และมีหลายที่ที่แก้ไขให้เป็นภาษาไทยให้ดาวน์โหลด แต่ก็จะเป็นเวอร์ชั่นที่ค่อนข้างเก่า และไม่สามารถอัพเดทได้

บทความนี้จะอธิบายวิธีแก้ไข jquery datepicker ให้เป็นภาษาไทยโดยละเอียด

เวลาเราดาวน์โหลด jqueryui มาทั้งชุด (หรือเลือกแบบ custom) ไฟล์ที่แยกเป็นส่วนต่างๆ จะอยู่ในโฟลเดอร์
development-bundle/ui

ไฟล์ต้นฉบับแบบแยกเป็นส่วนๆ

ซึ่งในที่นี้เราจะแก้ไข jquery.ui.datepicker.js

ให้เปิดไฟล์ jquery.ui.datepicker.js ขึ้นมา

แก้ไขชื่อเดือน/ชื่อวัน

ค้นหา monthNames: [
เพื่อแก้ไขส่วนที่เป็นชื่อเดือนและชื่อวัน

หาส่วนที่เป็นชื่อเดือน

ก็จะเจอโค้ด

ชื่อเดือน

แก้ตามใจเลยครับ โดยปกติจะแก้ให้เป็นประมาณนี้

	this.regional[""] = { // Default regional settings
		closeText: "Done", // Display text for close link
		prevText: "Prev", // Display text for previous month link
		nextText: "Next", // Display text for next month link
		currentText: "วันนี้", // Display text for current month link
		monthNames: ["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน",
			"กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"], // Names of months for drop-down and formatting
		monthNamesShort: ["ม.ค.", "ก.พ.", "มี.ค.", "เม.ย.", "พ.ค.", "มิ.ย.", "ก.ค.", "ส.ค.", "ก.ย.", "ต.ค.", "พ.ย.", "ธ.ค."], // For formatting
		dayNames: ["อาทิตย์", "จันทร์", "อังคาร", "พุธ", "พฤหัสบดี", "ศุกร์", "เสาร์"], // For formatting
		dayNamesShort: ["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."], // For formatting
		dayNamesMin: ["อ","จ","อ","พ","พ","ศ","ส"], // Column headings for days starting at Sunday
		weekHeader: "Wk", // Column header for week of the year
		dateFormat: "mm/dd/yy", // See format options on parseDate
		firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ...
		isRTL: false, // True if right-to-left language, false if left-to-right
		showMonthAfterYear: false, // True if the year select precedes month, false for month then year
		yearSuffix: "" // Additional text to append to the year in the month headers
	};


เสร็จแล้วก็บันทึก
ตอนนี้เราก็จะได้ชื่อเดือน ชื่อวันเป็นภาษาไทยแล้ว








แก้ไขค.ศ. ให้เป็นพ.ศ.

จากนั้นเราจะแก้การแสดงผลปีกันครับ จากค.ศ. ให้เป็นพ.ศ.

โดยค้นหา _generateMonthYearHeader

ค้นหาฟังก์ชั่น _generateMonthYearHeader

ซึ่งก็จะเจอประมาณ 2 จุด
ให้เลือกจุดนี้

แถวๆ นี้

หา

if (secondary || !changeYear) {
	html += "<span class='ui-datepicker-year'>" + drawYear + "</span>";
} else {


และแก้ตรง drawYear เป็น

if (secondary || !changeYear) {
	html += "<span class='ui-datepicker-year'>" + (drawYear + 543) + "</span>";
} else {


และหา

for (; year <= endYear; year++) {
	inst.yearshtml += "<option value='" + year + "'" +
		(year === drawYear ? " selected='selected'" : "") +
		">" + year + "</option>";
}


แก้ year เป็น

for (; year <= endYear; year++) {
	inst.yearshtml += "<option value='" + year + "'" +
		(year === drawYear ? " selected='selected'" : "") +
		">" + (year + 543) + "</option>";
}


เสร็จแล้วก็บันทึก เราก็จะได้ datepicker ที่แสดงผลเป็นภาษาไทยแล้วครับ

แต่เวลาเรียกใช้ คุณต้องเรียกแยกไฟล์ โดยต้องรวม jqueryui-core.js เข้าไปด้วย

<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<script src="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
		<script src="jquery.ui.core.js" type="text/javascript"></script>
		<script src="jquery.ui.datepicker.js" type="text/javascript"></script>
		<link href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" type="text/css" rel="stylesheet" />
		<script type="text/javascript">
		$(function () {
			$("#abc").datepicker({ dateFormat: "yy-mm-dd" });
		});
		</script>
		<title>Thai DatePicker Test</title>
	</head>
	<body>
		<form action="" method="get">
			<input id="abc" name="abc" type="text" />
		</form>
	</body>
</html>


datepicker ภาษาไทย

โดยคุณสามารถ update ให้เป็นเวอร์ชั่นล่าสุดได้ตลอด เพราะคุณรู้แล้วว่าจะแก้ไขตรงไหน







.


   
Share
Bookmark.   

  By : phpinfo()
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2013-03-06
  Download : Download  การแก้ไข jQuery Datepicker ให้เป็นภาษาไทย (0.0215 MB)
Sponsored Links
ThaiCreate.Com Forum


Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


Hit Link
   







Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่