renew-progress-filter.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. (function(){
  2. Vue.component('renew-progress-filter',{
  3. template:'<div style="height: 400px;overflow: auto;margin-bottom: 50px;">\
  4. <div class="ml10 filter-title">统计维度</div>\
  5. <div class="div-content" @click="contentClick">\
  6. <div class="mt20 div-group-btn c-row ml40">\
  7. <div class="div-btn c-33 active" data-lowCode="">\
  8. <a href="#" class="f-fs14">所有居民</a>\
  9. </div>\
  10. <div class="div-btn c-33" data-lowCode="3">\
  11. <a href="#" class="f-fs14">65岁以上签约</a>\
  12. </div>\
  13. <div class="div-btn c-33" data-lowCode="1">\
  14. <a href="#" class="f-fs14">高血压</a>\
  15. </div>\
  16. </div>\
  17. <div class="mt20 div-group-btn c-row ml40">\
  18. <div class="div-btn c-33" data-lowCode="2">\
  19. <a href="#" class="f-fs14">糖尿病</a>\
  20. </div>\
  21. </div>\
  22. </div>\
  23. <div id="footer">\
  24. <div class="c-row btn-wrap c-border-top fr">\
  25. <div class="div-foot-btn mr20" @click="resetClick">\
  26. <a href="#" class="c-666 f-fs16">重置</a>\
  27. </div>\
  28. <div class="div-foot-btn active" @click="confirmClick">\
  29. <a href="#" class="c-666 f-fs16">保存</a>\
  30. </div>\
  31. </div>\
  32. </div>\
  33. </div>',
  34. props:['contentHtml'],
  35. data: function(){
  36. return {
  37. }
  38. },
  39. methods: {
  40. contentClick:function(){
  41. $(".div-content").find(".div-btn").removeClass('active');
  42. $(event.target.closest("div")).addClass('active');
  43. },
  44. resetClick:function(){
  45. $(".div-content").find(".c-33").removeClass("active");
  46. $(".div-content").find(".c-33").eq(0).addClass("active");
  47. },
  48. confirmClick:function(){
  49. var vm = this;
  50. var $type = $(".div-content .div-btn.active"),
  51. typeCode = $type.attr("data-val"),
  52. lowCode = $type.attr("data-lowCode"),
  53. name = $type.find("a").html();
  54. console.log("lowCode:"+lowCode)
  55. console.log("name:"+name)
  56. //触发刷新
  57. this.$emit('vuedals:close', {
  58. lowCode: lowCode,
  59. name: name,
  60. contentHtml:$(".div-content").html()
  61. });
  62. }
  63. },
  64. mounted: function(){
  65. if(this.contentHtml){
  66. $(".div-content").html(this.contentHtml);
  67. }
  68. }
  69. });
  70. })()