form.ftl 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <#--
  2. <form></form>
  3. name:表单名称
  4. id:表单id
  5. action:提交地址
  6. method:提交方式
  7. -->
  8. <#macro form name id="" target=""
  9. action="" method="post" enctype=""
  10. class="form-horizontal" style="display:none; width:100%; background-color: white;" isvalidation=false tooltip=false
  11. redirect=""
  12. >
  13. <form<#rt/>
  14. role="form"<#rt/>
  15. method="${method}"<#rt/>
  16. action="${action}"<#rt/>
  17. <#if target!="">target="${target}" <#else> target="_self"</#if><#rt/>
  18. <#if id!=""> id="${id}"<#else> id="${name}"</#if><#rt/>
  19. <#if enctype!=""> enctype="${enctype}"</#if><#rt/>
  20. <#include "/include/ui/common-attributes.ftl"/><#rt/>
  21. >
  22. <@ms.hidden name="redirect" value="${redirect}"/>
  23. <#nested/><#rt/>
  24. <script>
  25. $(function() {
  26. var id = "${name}";
  27. <#if id?? && id!="">id="${id}"</#if>
  28. $('#'+id).fadeIn("slow");
  29. <#if isvalidation>
  30. $('#'+id).bootstrapValidator({
  31. <#if tooltip>
  32. container: 'tooltip',
  33. </#if>
  34. feedbackIcons: {
  35. valid: 'glyphicon glyphicon-ok',
  36. invalid: 'glyphicon glyphicon-remove',
  37. validating: 'glyphicon glyphicon-refresh'
  38. }
  39. });
  40. </#if>
  41. //$("#${name} .form-group>div.radio").siblings("i.form-control-feedback").clone().prependTo($("#${name} .form-group>div.radio"));
  42. //$("#${name} .form-group>div.radio").siblings("i.form-control-feedback").remove();
  43. <#if !class?has_content>
  44. $("#${name} .form-group>label").removeClass("col-sm-2");
  45. $("#${name} .form-group>div").removeClass("col-sm-9");
  46. var width = $("#${name} .form-group>div.ms-from-group-input").width();
  47. //$("#${name} .form-group>div.ms-from-group-input>:input").unwrap().parent().width(width);
  48. $("#${name} .form-group>div.ms-from-group-input").addClass("has-feedback").parent().width(width);
  49. //$("#${name} .form-group label").removeClass("checkbox-inline").removeClass("radio-inline");
  50. //$("#${name} .has-feedback .form-control-feedback").css({top:"25px"});
  51. <#elseif class?index_of("searchForm") gt -1>
  52. $("#${name} .form-group>label").removeClass("col-sm-3");
  53. $("#${name} .form-group>div").removeClass("col-sm-9");
  54. $("#${name} .form-group>label").addClass("col-sm-4");
  55. $("#${name} .form-group>div").addClass("col-sm-8");
  56. $("#${name} .ms-form-group").addClass("col-sm-4");
  57. $("#${name}").show();
  58. </#if>
  59. })
  60. </script>
  61. </form>
  62. </#macro>
  63. <#macro searchForm name id="" target=""
  64. action="" method="post" enctype=""
  65. class="searchForm form-inline" style="display:none; background-color: white;" isvalidation=false tooltip=true >
  66. <@ms.form name="${name}" id="${id}" action="${action}" style="display:none;background-color: white;" isvalidation=true class="${class}" tooltip=true>
  67. <#nested/><#rt/>
  68. </@ms.form>
  69. <div class="search-form-div"></div>
  70. <script type="text/javascript">
  71. $(function(){
  72. //收缩筛选
  73. var clickTimes = 1;
  74. var searchFormheight = $("#searchForm").height();
  75. //初始化顶住筛选部分的空白div
  76. $(".search-form-div").height(searchFormheight + 15);
  77. var _height = parseInt(searchFormheight)-26;
  78. $("#searchForm").find(".close").click(function(){
  79. var obj = $(this);
  80. if (clickTimes % 2 == 1) {
  81. //空白div与筛选同时往上缩
  82. $(".search-form-div").animate({height:"0px"},"slow");
  83. $("#searchForm").animate({top:"-"+_height+"px"},"slow");
  84. obj.find("span").removeClass("glyphicon-chevron-up").addClass("glyphicon-chevron-down");
  85. } else {
  86. //空白div与筛选同时展开
  87. $(".search-form-div").animate({height:searchFormheight+15+"px"},"slow");
  88. $("#searchForm").animate({top:"46px"},"slow");
  89. obj.find("span").removeClass("glyphicon-chevron-down").addClass("glyphicon-chevron-up");
  90. }
  91. clickTimes++
  92. })
  93. })
  94. </script>
  95. </#macro>
  96. <#macro searchFormButton close="">
  97. <div class="bottom" style="clear:both">
  98. <div class="close"><span class="glyphicon glyphicon-chevron-up"></span></div>
  99. <@ms.resetButton/>
  100. <#nested/><#rt/>
  101. </div>
  102. </#macro>
  103. <#--自定义行-->
  104. <#macro formRow label=" " class="form-control" colSm="" groupClass="form-group" width="" labelStyle="" help="" style="" >
  105. <div class="${groupClass}">
  106. <#include "/include/ui/control.ftl"/><#rt/>
  107. <div class="col-sm-9 ms-from-group-input" style="line-height:30px;<#if width!=""> width:${width}px;</#if>${style}"<#rt/>>
  108. <#nested/>
  109. </div>
  110. </div>
  111. </#macro>
  112. <#--
  113. <input type="text"/>
  114. -->
  115. <#macro fromgroup id="" size="" label="" style="">
  116. <div class="form-group ms-form-group" style="${style}" help="">
  117. <#include "/include/ui/control.ftl"/><#rt/>
  118. <div class="ms-form-control">
  119. <#nested/><#rt/>
  120. </div>
  121. </div>
  122. </#macro>