2010-03-05 44 views
8

jQuery kiểm tra tính hợp lệ của một ngày qua:Đặt một miền địa phương trong javascript

!/Invalid|NaN/.test(new Date(value)) 

new Date(dateString) cũng giống như Date.parse(dateString) và sử dụng trình duyệt/OS locale để phân tích chuỗi.

Tôi đang cố gắng phân tích cú pháp DD/MM/YYYY nhưng tôi gặp lỗi vì trình duyệt của tôi đang tìm kiếm MM/DD/YYYY. Vì sản phẩm của tôi sẽ chỉ được sử dụng bởi DD/MM người, tôi muốn ép buộc hành vi này.

Tôi có thể viết trình xác thực tùy chỉnh, nhưng cũng có thể thay đổi ngôn ngữ trình duyệt qua JavaScript không?

Trả lời

-2

Bạn không thể thay đổi ngôn ngữ, vì không có tính năng như vậy trong EMCAScript specification.

Tuy nhiên, có một gói hay gọi là php.js triển khai các hàm PHP trong JavaScript.

Hai trong số các chức năng là setlocale() và date(). Bạn có thể sử dụng chúng.

+5

Ồ, tôi sẽ không bao giờ đề nghị ai đó chạm vào mã php.js đó với cực dài tùy ý. Yuk. – Pointy

+0

Anh ấy luôn có thể xem phụ thuộc và chỉ sử dụng các chức năng cần thiết. – Sagi

+1

im không sử dụng php.js, được chấp nhận cho thông tin mà không thể thay đổi ngôn ngữ của nó trong javascript – ariel

-1

Nếu sản phẩm của bạn sẽ chỉ được sử dụng bởi người DD/MM/YYYY, hãy đặt trình duyệt của bạn thành ngôn ngữ hỗ trợ DD/MM/YYYY.

2

Bạn nên sử dụng moment.js để phân tích ngày.

//parse string according to format and return new moment 
var day = moment("16/12/2017", "DD/MM/YYYY"); 

var dayAsDate = day.toDate(); //you can even covert the moment to a Date 

Globalize cũng có date parsing module nếu bạn cần xử lý chuỗi ngày bằng ngôn ngữ/tập lệnh khác.

Các vấn đề liên quan