validateForm.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import i18n from '../lang'
  2. const $t = function() {
  3. return i18n.t.apply(i18n, arguments)
  4. }
  5. // console.log(i18n.t("valid.required"))
  6. const validateForm = {
  7. // 手机验证 (element Form规则)
  8. mobile: function(rule, value, callback) {
  9. if (!value) {
  10. callback(new Error($t('valid.required', [$t('input.telephone')])))
  11. }
  12. var reg = /^[1][0-9][0-9]{9}$/
  13. if (value.length < 11 || !reg.test(value)) {
  14. callback(
  15. new Error($t('valid.formatError', [$t('input.telephone')]))
  16. )
  17. }
  18. callback()
  19. },
  20. getJiaMi: function(str) {
  21. if (!str || str.length <= 6) return
  22. var str1 = str.substring(0, 3)
  23. var str2 = str.substring(str.length - 3, str.length)
  24. var strbu = ''
  25. var n = str.length - 6
  26. for (var c = 0; c < n; c++) {
  27. strbu += '*'
  28. }
  29. return str1 + strbu + str2
  30. },
  31. // 手机验证 (element Form规则)
  32. email: function(rule, value, callback) {
  33. if (!value) {
  34. callback(new Error($t('valid.required', [$t('input.email')])))
  35. }
  36. var reg = /^\w+((.\w+)|(-\w+))@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+).[A-Za-z0-9]+$/
  37. if (!reg.test(value)) {
  38. callback(new Error($t('valid.formatError', [$t('input.email')])))
  39. }
  40. callback()
  41. },
  42. idCard: function(rule, value, callback) {
  43. const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
  44. if (!value) {
  45. callback(new Error($t('valid.required', [$t('input.idCard')])))
  46. }
  47. if (!reg.test(value)) {
  48. callback(new Error($t('valid.formatError', [$t('input.idCard')])))
  49. }
  50. callback()
  51. },
  52. chinese: function(rule, value, callback) {
  53. const reg = /^[\u0391-\uFFE5]+$/
  54. if (!reg.test(value)) {
  55. callback(new Error($t('valid.formatError')))
  56. }
  57. callback(rule, value, callback)
  58. },
  59. numberAndLetter: function() {
  60. const reg = /^[0-9a-zA-Z]*$/
  61. if (!reg.test(value)) {
  62. callback(new Error($t('valid.formatError')))
  63. }
  64. callback()
  65. },
  66. digit: function(rule, value, callback) {
  67. let reg = /^[0-9]*$/
  68. if (!reg.test(value)) {
  69. callback(new Error("请输入整型数字"));
  70. }
  71. callback();
  72. }
  73. }
  74. export default validateForm