dialogCom.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. export default {
  2. props: {
  3. fatherdialogv: Boolean,
  4. ruleform:Object,
  5. fatherrules:Object,
  6. fatherdialoga:Object,
  7. },
  8. template: `
  9. <el-dialog title="项目咨询" style="display:none" :style="{display:(fatherdialogv?'block':'none')}" @close="closeDialog('ruleform')"
  10. :visible.sync="fatherdialogv" width="700px" center class="feedBackDialog" :lock-scroll="false">
  11. <el-form :model="ruleform" :rules="fatherrules" ref="ruleform" label-width="80px" class="demo-ruleform">
  12. <el-form-item label="" prop="platName" style="" class="dialogTypeLabel">
  13. <el-radio-group v-model="ruleform.platName">
  14. <el-radio-button :label="item.categoryName" v-for="item in fatherdialoga" :key="item.id">
  15. </el-radio-button>
  16. </el-radio-group>
  17. </el-form-item>
  18. <el-row :gutter="20">
  19. <el-col :span="12">
  20. <el-form-item label="姓名" prop="consultName">
  21. <el-input v-model="ruleform.consultName"></el-input>
  22. </el-form-item>
  23. </el-col>
  24. <el-col :span="12">
  25. <el-form-item label="联系电话" prop="consultPhone">
  26. <el-input v-model="ruleform.consultPhone"></el-input>
  27. </el-form-item>
  28. </el-col>
  29. <el-col :span="12">
  30. <el-form-item label="邮箱" prop="mail">
  31. <el-input v-model="ruleform.mail"></el-input>
  32. </el-form-item>
  33. </el-col>
  34. <el-col :span="12">
  35. <el-form-item label="公司" prop="company">
  36. <el-input v-model="ruleform.company"></el-input>
  37. </el-form-item>
  38. </el-col>
  39. </el-row>
  40. <el-form-item label="需求描述" prop="consultContent">
  41. <el-input type="textarea" v-model="ruleform.consultContent"></el-input>
  42. </el-form-item>
  43. </el-form>
  44. <!-- <span>需要注意的是内容是默认不居中的</span> -->
  45. <span slot="footer" class="dialog-footer">
  46. <el-button @click="resetForm('ruleform')">取 消</el-button>
  47. <el-button type="primary" @click="submitForm('ruleform')">提 交</el-button>
  48. </span>
  49. </el-dialog>
  50. `,
  51. mounted: function () {
  52. },
  53. methods:{
  54. //公共弹框
  55. submitForm(formName) {
  56. var _this = this
  57. this.$refs[formName].validate((valid) => {
  58. if (valid) {
  59. let param = JSON.stringify(_this.ruleform)
  60. jQuery.ajax({
  61. type: 'POST',
  62. // dataType: 'json',
  63. contentType: 'application/json;charset=UTF-8',
  64. url: window.FQDN2 + 'siteReview',
  65. data: param
  66. }).done(function (res) {
  67. if (res.status === "SUCCESS") {
  68. _this.$message({
  69. message: '提交成功',
  70. type: 'success'
  71. });
  72. _this.fatherdialogv = false;
  73. _this.$refs[formName].resetFields(); //重置from校验
  74. }
  75. }).fail(function (err) {});
  76. } else {
  77. console.log('error submit!!');
  78. return false;
  79. }
  80. });
  81. },
  82. /** 关闭弹窗 */
  83. closeDialog(formName) {
  84. this.$emit('data-event', false);
  85. this.$refs[formName].resetFields();
  86. },
  87. // 重置表单
  88. resetForm(formName) {
  89. this.$refs[formName].resetFields();
  90. this.fatherdialogv = false
  91. },
  92. }
  93. }