熟練使用artTemplate.helper()方法


最近,使用artTemplate模板比較頻繁,也遇到了一些問題。 使用artTemplate模板的時候,使用{{$index}}只能獲取到小寫的阿拉伯數字,但是,項目實際需要大寫的,類似,"一、二、三、四"這樣的數字寫法。之前也使用過這個模板,但是並沒有遇到這樣的需求。更要緊的是模板提供的helper()方法不怎么會用。形勢所逼,還是硬着頭皮了解一下吧。 如果有同行業遇到這樣的問題,在網上搜索的到類似的,那肯定和寫的不一樣,仔細了解一下吧,代碼貼在這兒了。


  1. <!DOCTYPE html>
  2. <html>
  3. <headlang="zh-cn">
  4. <metacharset="UTF-8">
  5. <title>arttemplate</title>
  6. <scriptsrc="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
  7. <scriptsrc="template.js"></script>
  8. </head>
  9. <body>
  10. <divid="content3"></div>
  11. <scriptid="test3"type="text/html">
  12. <p>{{numberToChar 11230}}</p>
  13. </script>
  14. </body>
  15. <script>
  16. var toChar =["零","一","二","三","四","五","六","七","八","九"];
  17. var toUnitChar =["","十","百","千","萬","億","萬億","億億"];
  18. template.helper('numberToChar',function(number){
  19. var toStr ='', toLargeStr ='';
  20. var toUnitStr =0;
  21. var flag =true;
  22. while(number >0){
  23. var v = number %10;
  24. if(v ===0){
  25. if(!flag){
  26. flag =true;
  27. toLargeStr = toChar[v]+ toLargeStr;
  28. }
  29. }else{
  30. flag =false;
  31. toStr = toChar[v];
  32. toStr += toUnitChar[toUnitStr];
  33. toLargeStr = toStr + toLargeStr;
  34. }
  35. toUnitStr++;
  36. number =Math.floor(number /10);
  37. }
  38. return toLargeStr;
  39. });
  40. $('#content3').html(template('test3'));
  41. </script>
  42. </html>

最近,使用artTemplate模板比較頻繁,也遇到了一些問題。 使用artTemplate模板的時候,使用{{$index}}只能獲取到小寫的阿拉伯數字,但是,項目實際需要大寫的,類似,"一、二、三、四"這樣的數字寫法。之前也使用過這個模板,但是並沒有遇到這樣的需求。更要緊的是模板提供的helper()方法不怎么會用。形勢所逼,還是硬着頭皮了解一下吧。 如果有同行業遇到這樣的問題,在網上搜索的到類似的,那肯定和寫的不一樣,仔細了解一下吧,代碼貼在這兒了。


  1. <!DOCTYPE html>
  2. <html>
  3. <headlang="zh-cn">
  4. <metacharset="UTF-8">
  5. <title>arttemplate</title>
  6. <scriptsrc="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
  7. <scriptsrc="template.js"></script>
  8. </head>
  9. <body>
  10. <divid="content3"></div>
  11. <scriptid="test3"type="text/html">
  12. <p>{{numberToChar 11230}}</p>
  13. </script>
  14. </body>
  15. <script>
  16. var toChar =["零","一","二","三","四","五","六","七","八","九"];
  17. var toUnitChar =["","十","百","千","萬","億","萬億","億億"];
  18. template.helper('numberToChar',function(number){
  19. var toStr ='', toLargeStr ='';
  20. var toUnitStr =0;
  21. var flag =true;
  22. while(number >0){
  23. var v = number %10;
  24. if(v ===0){
  25. if(!flag){
  26. flag =true;
  27. toLargeStr = toChar[v]+ toLargeStr;
  28. }
  29. }else{
  30. flag =false;
  31. toStr = toChar[v];
  32. toStr += toUnitChar[toUnitStr];
  33. toLargeStr = toStr + toLargeStr;
  34. }
  35. toUnitStr++;
  36. number =Math.floor(number /10);
  37. }
  38. return toLargeStr;
  39. });
  40. $('#content3').html(template('test3'));
  41. </script>
  42. </html>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM