Açıklama Yok

feedback-page.js 3.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. (function(mui, window, document, undefined) {
  2. mui.init();
  3. var get = function(id) {
  4. return document.getElementById(id);
  5. };
  6. var qsa = function(sel) {
  7. return [].slice.call(document.querySelectorAll(sel));
  8. };
  9. var ui = {
  10. question: get('question'),
  11. contact: get('contact'),
  12. imageList: get('image-list'),
  13. submit: get('submit')
  14. };
  15. ui.clearForm = function() {
  16. ui.question.value = '';
  17. ui.contact.value = '';
  18. ui.imageList.innerHTML = '';
  19. ui.newPlaceholder();
  20. };
  21. ui.getFileInputArray = function() {
  22. return [].slice.call(ui.imageList.querySelectorAll('input[type="file"]'));
  23. };
  24. ui.getFileInputIdArray = function() {
  25. var fileInputArray = ui.getFileInputArray();
  26. var idArray = [];
  27. fileInputArray.forEach(function(fileInput) {
  28. if(fileInput.value != '') {
  29. idArray.push(fileInput.getAttribute('id'));
  30. }
  31. });
  32. return idArray;
  33. };
  34. var imageIndexIdNum = 0;
  35. ui.newPlaceholder = function() {
  36. var fileInputArray = ui.getFileInputArray();
  37. if(fileInputArray &&fileInputArray.length >0) {
  38. return;
  39. }
  40. imageIndexIdNum++;
  41. var placeholder = document.createElement('div');
  42. placeholder.setAttribute('class', 'image-item space');
  43. var closeButton = document.createElement('div');
  44. closeButton.setAttribute('class', 'image-close');
  45. closeButton.innerHTML = 'X';
  46. closeButton.addEventListener('click', function(event) {
  47. event.stopPropagation();
  48. event.cancelBubble = true;
  49. setTimeout(function() {
  50. ui.imageList.removeChild(placeholder);
  51. }, 0);
  52. return false;
  53. }, false);
  54. var fileInput = document.createElement('input');
  55. fileInput.setAttribute('type', 'file');
  56. fileInput.setAttribute('class', 'image-box ');
  57. fileInput.setAttribute('accept', 'image/*');
  58. fileInput.setAttribute('id', 'image-' + imageIndexIdNum);
  59. fileInput.addEventListener('change', function(event) {
  60. var file = fileInput.files[0];
  61. var lengh = document.getElementsByClassName("image-item").length;
  62. if(lengh <6) {
  63. if(file) {
  64. var filename = $("#image-" + imageIndexIdNum).val();
  65. fileName = filename.split("\\")[2];
  66. var reader = new FileReader();
  67. reader.onload = function() {
  68. //处理 android 4.1 兼容问题
  69. var base64 = reader.result.split(',')[1];
  70. var dataUrl = 'data:image/png;base64,' + base64;
  71. var usercode = localStorage.getItem("user"); //获取本地存储
  72. placeholder.style.backgroundImage = 'url(' + dataUrl + ')';
  73. $.ajax({
  74. type: "post",
  75. url: huayi.config.callcenter_url + 'Index/Upload64',
  76. async: true,
  77. dataType: 'json',
  78. data: {
  79. dataurl: dataUrl,
  80. usercode: localStorage.getItem("user"),
  81. filename:fileName,
  82. token:localStorage.getItem("token")
  83. },
  84. success: function(data) {
  85. if(data.state == "success") {
  86. fileInput.setAttribute('indexs', data.data.F_Id);
  87. mui.toast('上传成功');
  88. } else {
  89. mui.alert(data.message);
  90. }
  91. }
  92. });
  93. }
  94. reader.readAsDataURL(file);
  95. placeholder.classList.remove('space');
  96. ui.newPlaceholder();
  97. }
  98. }else{
  99. mui.toast('最多上传五张');
  100. }
  101. }, false);
  102. placeholder.appendChild(closeButton);
  103. placeholder.appendChild(fileInput);
  104. ui.imageList.appendChild(placeholder);
  105. };
  106. ui.newPlaceholder();
  107. })(mui, window, document, undefined);