You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

init_KindEditor.js 5.3 kB

​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. function init_editor(params){
  2. // var minHeight; //最小高度
  3. var paramsHeight = params.height; //设定的高度
  4. var paramsWidth = params.width == undefined ? "100%" : params.width;
  5. var editor = params.kindutil.create(params.textarea, {
  6. resizeType : 1,minWidth:"1px",width:paramsWidth,
  7. height:"30px",// == undefined ? "30px":paramsHeight+"px",
  8. minHeight:"30px",// == undefined ? "30px":paramsHeight+"px",
  9. items:['emoticons'],
  10. afterChange:function(){//按键事件
  11. nh_check_field({content:this,contentmsg:params.contentmsg,textarea:params.textarea});
  12. var edit = this.edit;
  13. var body = edit.doc.body;
  14. edit.iframe.height(paramsHeight);
  15. this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight) + (paramsHeight == undefined ? 30:paramsHeight), paramsHeight));
  16. },
  17. afterCreate:function(){
  18. var toolbar = $("div[class='ke-toolbar']",params.div_form);
  19. toolbar.css('width',24);
  20. $(".ke-outline>.ke-toolbar-icon",toolbar).append('表情');
  21. params.toolbar_container.append(toolbar);
  22. //init
  23. var edit = this.edit;
  24. var body = edit.doc.body;
  25. edit.iframe[0].scroll = 'no';
  26. body.style.overflowY = 'hidden';
  27. //reset height
  28. var edit = this.edit;
  29. var body = edit.doc.body;
  30. paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
  31. edit.iframe.height(paramsHeight);
  32. this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight)+ (paramsHeight == undefined ? 30:paramsHeight) , paramsHeight));
  33. }
  34. }).loadPlugin('paste');
  35. return editor;
  36. }
  37. function nh_check_field(params){
  38. var result=true;
  39. if(params.content!=undefined){
  40. if(params.content.isEmpty()){
  41. result=false;
  42. }
  43. if(params.content.html()!=params.textarea.html() || params.issubmit==true){
  44. params.textarea.html(params.content.html());
  45. params.content.sync();
  46. if(params.content.isEmpty()){
  47. params.contentmsg.html('内容不能为空');
  48. params.contentmsg.css({color:'#ff0000'});
  49. params.submit_btn.one('click', function(){
  50. params.form.submit();
  51. });
  52. }else{
  53. params.contentmsg.html('填写正确');
  54. params.contentmsg.css({color:'#008000'});
  55. }
  56. params.contentmsg.show();
  57. }
  58. }
  59. return result;
  60. }
  61. function init_form(params){
  62. params.form.submit(function(){
  63. var flag = false;
  64. if(params.form.attr('data-remote') != undefined ){
  65. flag = true
  66. }
  67. var is_checked = nh_check_field({
  68. issubmit:true,
  69. content:params.editor,
  70. contentmsg:params.contentmsg,
  71. textarea:params.textarea,
  72. submit_btn:params.submit_btn,
  73. form:params.form
  74. });
  75. if(is_checked){
  76. if(flag){
  77. return true;
  78. }else{
  79. $(this)[0].submit();
  80. return false;
  81. }
  82. }
  83. return false;
  84. });
  85. }
  86. function nh_reset_form(params){
  87. params.form[0].reset();
  88. params.textarea.empty();
  89. if(params.editor != undefined){
  90. params.editor.html(params.textarea.html());
  91. }
  92. params.contentmsg.hide();
  93. }
  94. //第二个参数是高度,可以传,可以不传
  95. function init_KindEditor_data(id){
  96. var height = arguments[1] ? arguments[1] : undefined;
  97. var width = arguments[2] ? arguments[2] : undefined;
  98. KindEditor.ready(function (K) {
  99. $("div[nhname='new_message_" + id + "']").each(function () {
  100. var params = {};
  101. params.kindutil = K;
  102. params.div_form = $(this);
  103. params.form = $("form", params.div_form);
  104. if (params.form == undefined || params.form.length == 0) {
  105. return;
  106. }
  107. params.textarea = $("textarea[nhname='new_message_textarea_" + id + "']", params.div_form);
  108. params.contentmsg = $("p[nhname='contentmsg_" + id + "']", params.div_form);
  109. params.toolbar_container = $("div[nhname='toolbar_container_" + id + "']", params.div_form);
  110. params.cancel_btn = $("#new_message_cancel_btn_" + id);
  111. params.submit_btn = $("#new_message_submit_btn_" + id);
  112. params.height = height;
  113. params.width = width;
  114. if (params.textarea.data('init') == undefined) {
  115. params.editor = init_editor(params);
  116. init_form(params);
  117. params.cancel_btn.click(function () {
  118. nh_reset_form(params);
  119. });
  120. params.submit_btn.one('click', function () {
  121. params.form.submit();
  122. });
  123. params.textarea.data('init', 1);
  124. $(this).show();
  125. }
  126. });
  127. });
  128. }

软件技术创新是当今国家整体创新能力的重要基础和发展引擎。近年来,大众参与的软件创新与创业活动已经成为网络时代软件开发和应用的新形态,正在快速改变着全球软件创新模式和软件产业格局。 ...