找文章 / 找答案
精选问答 更多内容

[常用脚本] 日期转大写

yhdata_KaApZYZC青铜二 显示全部楼层 发表于 2022-6-26 17:31:38 |阅读模式 打印 上一主题 下一主题
3
未解决

【常用脚本】 日期转大写

1893 5
如下图:文本参数设置的今天,可以不可以转成大写
我需要大写赋给一个文本组件

微信图片_20220626173013.png
回复

使用道具 举报

精彩评论5

永洪tech_xh青铜一 显示全部楼层 发表于 2022-6-26 18:20:43
本帖最后由 永洪tech_xh 于 2022-6-26 19:00 编辑

  1. var xx=formatDate(param["文本参数1"],'yyyy年MM月dd日')
  2. var cmonth=month(param["文本参数1"])
  3. var cday=day(param["文本参数1"])
  4. var char_num=['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九']

  5. if(cday==10)
  6. {
  7.     xx=replace(xx,9,2,'十')
  8. }
  9. else if(cday>10 && cday<20)
  10. {
  11.     xx=replace(xx,9,1,'十')
  12. }
  13. else if(cday==20)
  14. {
  15.     xx=replace(xx,9,2,'二十')
  16. }
  17. else if(cday>=20 && cday<30)
  18. {
  19.     xx=replace(xx,9,1,'二十')
  20. }
  21. else if(cday==30)
  22. {
  23.     xx=replace(xx,9,2,'三十')
  24. }
  25. else if(cday>=30)
  26. {
  27.     xx=replace(xx,9,1,'三十')
  28. }
  29. if(cday<10)
  30. {
  31.     xx=replace(xx,9,1,'')
  32. }
  33. if(cmonth==10)
  34. {
  35.     xx=replace(xx,6,2,'十')
  36. }
  37. else if(cmonth>10)
  38. {
  39.     xx=replace(xx,6,1,'十')
  40. }
  41. if(cmonth<10)
  42. {
  43.     xx=replace(xx,6,1,'')
  44. }

  45. for(i=0;i<=char_num.length;i++)
  46. {
  47. xx=replaceRegex(xx,i.toString(),char_num[i])
  48. }

  49. 文本1.data=xx
复制代码


回复

使用道具 举报

永洪tech_xh青铜一 显示全部楼层 发表于 2022-6-26 18:22:27
永洪tech_xh 发表于 2022-6-26 18:20
var xx=formatDate(param["文本参数1"],'yyyy年MM月dd日')
var cmonth=month(param["文本参数1"])
var cday ...

您可以参考下这个,附效果图

日期转大写

日期转大写
回复

使用道具 举报

天问台青铜四 显示全部楼层 发表于 2022-6-26 18:31:24
类似这种

var today=new Date();
var chinese = ['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九'];

   var y = today.getFullYear().toString();
   var m = (today.getMonth()+1).toString();
   var d = today.getDate().toString();
var result = "";
   for (var i = 0; i < y.length; i++) {
result += chinese[y.charAt(i)];
}
   result += "年";
   if (m.length == 2) {
if (m.charAt(0) == "1") {
result += ("十" + chinese[m.charAt(1)] + "月");
}
}
   else {
result += (chinese[m.charAt(0)] + "月");
}
   if (d.length == 2) {
result += (chinese[d.charAt(0)] + "十" + chinese[d.charAt(1)] + "日");
}
   else {
result += (chinese[d.charAt(0)] + "日");
}
大写日期.data=result;
回复

使用道具 举报

天问台青铜四 显示全部楼层 发表于 2022-6-26 18:32:26
示意图,把上面代码的第一句改成取日期选择的值就行了
1656239506415.jpg
回复

使用道具 举报

永洪tech_xh青铜一 显示全部楼层 发表于 2022-6-26 18:43:19
本帖最后由 永洪tech_xh 于 2022-6-26 18:46 编辑
天问台 发表于 2022-6-26 18:32
示意图,把上面代码的第一句改成取日期选择的值就行了

我在测试您这个脚本时测试十月三十日会有问题,好像还需要稍微再改一下呢。
而且我这边会报getFullYear()、getMonth()、getDate()找不到的情况呢,我这边是942版本,需要替换下获取数值的方法。附图
日期转大写1.png
日期转大写2.png
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部