diyform_post.html 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. {layout name="common/layout" /}
  2. <link rel="stylesheet" href="__CDN__/assets/libs/toastr/toastr.min.css">
  3. <link rel="stylesheet" href="__CDN__/assets/libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css">
  4. <link rel="stylesheet" href="__CDN__/assets/libs/bootstrap-daterangepicker/daterangepicker.css">
  5. <link rel="stylesheet" href="__CDN__/assets/libs/nice-validator/dist/jquery.validator.css">
  6. <link rel="stylesheet" href="__CDN__/assets/libs/fastadmin-selectpage/selectpage.css">
  7. <link rel="stylesheet" href="__CDN__/assets/libs/bootstrap-select/dist/css/bootstrap-select.min.css">
  8. <style>
  9. #post-form .input-group-addon {
  10. background: none;
  11. }
  12. #post-form .panel-default {
  13. padding: 0;
  14. }
  15. .faupload-preview li {
  16. margin-top: 15px;
  17. }
  18. .input-group > .msg-box.n-right {
  19. position: absolute;
  20. }
  21. @media (max-width: 767px) {
  22. .n-bootstrap .col-xs-12 > .n-right .msg-wrap {
  23. margin-right: 15px;
  24. }
  25. .n-bootstrap .n-right {
  26. margin-top: 0;
  27. top: -20px;
  28. position: absolute;
  29. left: 0;
  30. text-align: right;
  31. width: 100%;
  32. }
  33. .n-bootstrap .n-right .msg-wrap {
  34. position: relative;
  35. }
  36. }
  37. </style>
  38. <!--@formatter:off-->
  39. <script type="text/javascript">
  40. var require = {
  41. config: {$jsconfig|json_encode}
  42. };
  43. </script>
  44. <!--@formatter:on-->
  45. <div class="container" id="content-container">
  46. <div class="row">
  47. <div class="col-md-12">
  48. <div class="panel panel-default">
  49. <div class="panel-body">
  50. <section class="article-content">
  51. <div class="article-metas text-center">
  52. <h1 class="metas-title">
  53. 发布{cms:diyform name="name" /}
  54. </h1>
  55. </div>
  56. <hr>
  57. <div class="py-4">
  58. <!-- S 正文 -->
  59. <div class="row">
  60. <div class="col-xs-12 col-md-8 col-md-offset-2">
  61. <form id="post-form" class="form-horizontal" role="form" data-toggle="validator" method="POST">
  62. <input type="hidden" name="__diyname__" value="{$__DIYFORM__['diyname']}">
  63. {:token()}
  64. {cms:diyform name="fieldslist" /}
  65. {if $__DIYFORM__->iscaptcha}
  66. <div class="form-group">
  67. <div class="control-label col-xs-12 col-sm-2">验证码</div>
  68. <div class="col-xs-12 col-sm-8">
  69. <a href="javascript:" class="hidden" data-event data-url></a>
  70. <div class="input-group">
  71. <input type="text" name="captcha" id="c-captcha" class="form-control" data-rule="required;length(4)"/>
  72. <span class="input-group-btn" style="padding:0;border:none;">
  73. <img src="{:captcha_src()}" width="100" height="31" onclick="this.src = '{:captcha_src()}?r=' + Math.random();"/>
  74. </span>
  75. <span class="msg-box n-right" for="c-captcha"></span>
  76. </div>
  77. </div>
  78. </div>
  79. {/if}
  80. <div class="form-group normal-footer">
  81. <label class="control-label col-xs-12 col-sm-2"></label>
  82. <div class="col-xs-12 col-sm-8 text-center">
  83. <button type="submit" class="btn btn-primary btn-embossed disabled">{:__('OK')}</button>
  84. <button type="reset" class="btn btn-default btn-embossed">{:__('Reset')}</button>
  85. </div>
  86. </div>
  87. </form>
  88. </div>
  89. </div>
  90. <!-- E 正文 -->
  91. </div>
  92. <div class="clearfix"></div>
  93. </section>
  94. </div>
  95. </div>
  96. </div>
  97. </div>
  98. </div>
  99. <script data-render="script">
  100. $(function () {
  101. //避免Bootstrap和RequireJS中引入的Bootstrap事件冲突
  102. $(document).off('click.bs.dropdown.data-api');
  103. });
  104. require.callback = function () {
  105. define('diyform/index', ['jquery', 'bootstrap', 'frontend', 'form'], function ($, undefined, Frontend, Form) {
  106. var Controller = {
  107. index: function () {
  108. Form.api.bindevent($("form[role=form]"), function (data, ret) {
  109. Layer.alert(ret.msg, {
  110. end: function () {
  111. location.href = ret.url;
  112. }
  113. });
  114. return false;
  115. });
  116. }
  117. };
  118. return Controller;
  119. });
  120. }
  121. </script>
  122. <script data-render="script" src="__CDN__/assets/js/require{$Think.config.app_debug?'':'.min'}.js" data-main="__CDN__/assets/js/require-frontend{$Think.config.app_debug?'':'.min'}.js?v={$site.version}"></script>