ASP.NET MVC 视图中@符号和正则表达式中的@符号冲突的解决方法

2019年4月4日16:02:13 12 1,510 831字阅读2分46秒
摘要

偶遇错误“ASP.NET MVC 视图中@符号和正则表达式中的@符号冲突“,分享一下解决方案。

今天做项目的时候遇到一个问题,关于MVC 视图中使用正则表达式的@冲突,找了半天都没找到,幸亏功夫不负有心人,还是找到解决方法。

起因

我在视图页面中写js判断用户输入邮箱是否符合,使用正则表达式。按照之前的常识,想输出@就需要写两个@,本想这应该没毛病的。

  1. <input type="email" class="form-control" name="ComMail" placeholder="请输入联系业务邮箱" required onblur="var reg = /^\w+([-+.]\w+)*@@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; var regExp = new RegExp(reg); if (!regExp.test(value)) { value = '';swal('请输入有效的邮箱账号!')};" onkeyup="value=value.replace(/[^\d\.]/g,'')" />

谁知,竟然报错了。但是从报错信息来看,的确是输出了一个@。

解决

经过长时间的查找资料,终于找到解决方法了。

  1. @{@Html.Raw("@");}

如果需要输出@,发生错误,上面代码就能完美解决错误。即:

  1. <input type="email" class="form-control" name="ComMail" placeholder="请输入联系业务邮箱" required onblur="var reg = /^\w+([-+.]\w+)*@{@Html.Raw("@");}\w+([-.]\w+)*\.\w+([-.]\w+)*$/; var regExp = new RegExp(reg); if (!regExp.test(value)) { value = '';swal('请输入有效的邮箱账号!')};" onkeyup="value=value.replace(/[^\d\.]/g,'')" />

 

继续阅读
历史上的今天
四月
4
weinxin
微信公众号
博客微信公众号,欢迎关注。
avatar
  • 本文由 发表于 2019年4月4日16:02:13
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接。
硅云免费虚拟主机
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:12   其中:访客  6   博主  6
    • avatar 子午物联网 2

      论写正则,我是不会,智能用别人写好的

      • avatar 空包网 0

        感谢分享

          • avatar 萧瑟

            @ 空包网 客气了,一起学习呦。

          • avatar 红嘴鸭 2

            感谢大佬的分享

              • avatar 萧瑟

                @ 红嘴鸭 只是一个小菜鸟,不算大佬 :mrgreen:

              • avatar 西枫里博客 4

                C#的资源还是蛮少的吧?

                • avatar 90人网络 1

                  .net很神奇

                  • avatar 小王先森 6

                    还没接触到.net