我正在使用 JQuery 日历为应用程序生成日期字符串。如果我将语言设置为英语,我会得到这样的日期字符串:
星期五 • 2014 年 10 月 10 日
JQ Calendars 不处理时间,所以我自己格式化字符串的时间部分:
[ • UTC-04:00 上午 12:00]</p>
(为了清楚起见,括号被包括在内;它们不会成为最终字符串的一部分。)接下来,我只是将这两个字符串加在一起,得到:
星期五 • 2014 年 10 月 10 日[ • UTC-04:00 上午 12:00]
这正是我想要的。但是,当我将语言设置为希伯来语时,我的结果是:
2014 年 10 月 10 日
[ • UTC-04:00 上午 12:00]</p>
2014 年 10 月 10 日[ • UTC-04:00 上午 12:00]</p>
请注意 RTL 希伯来语月份和年份之间时间字符串的奇怪插入。
我已经尝试将两个字符串的部分包装在方向代码(U+202A、U+202C 等)中,但没有成功。看起来日期字符串已经是 RTL 和 LTR 的混合体,但是我已经搜索过它并且找不到任何方向字符,尽管我很可能会阻止这个搜索。
关于如何解决这个问题的任何想法?无论好坏,我希望时间字符串“跟随”日期字符串而不会出现奇怪的中断,即使这在技术上可能不正确。我知道 Javascript 的 toLocaleString() 功能,但它还没有得到很好的支持,所以我想至少使用上面的方法作为后备。