用于服务器端变量的JavaScript DOM

时间:2012-02-09 10:40:40

标签: javascript

我将服务器端变量用作<%=value01%>,如果value01是电子邮件地址,我需要完成JavaScript功能。我用以下方式编写了一个JavaScript,但是没有用。任何人请纠正它。

    var myem = document.getElementByTagName('value01').value;

    if(myem.value.match(/[.].*[@]|[@].*[.]/))
    {
        alert('Value contains email');
    }

3 个答案:

答案 0 :(得分:1)

尝试隐藏输入或最好使用HTML5 data-属性:

<input id="interestingElement" type="hidden" value="<%=value01%>" /> // Hidden input
<div id="interestingElement" data-email="<%=value01%>" /> // data- attribute

使用Javascript:

var email = document.getElementById('interestingElement').value;  // Hidden input
var email = document.getElementById('interestingElement').attributes['data-email']; // data- attribute
if (email.match(yourEmailRegex ...

答案 1 :(得分:0)

你的正则表达式应如下所示:

/^[\w_\.\-]+\@[\w\-]+\.+[\w]+$/

答案 2 :(得分:0)

如果你想验证所有类型的电子邮件(.com或.com.xx),这个正则表达式将起作用:

/ ^([A-ZA-Z0-9 _.-])+ \ @(([A-ZA-Z0-9 - ])+。)+([A-ZA-Z0-9] {2- ,4})+ $ /

尝试:

var myem = document.getElementsByTagName('value01').value;
var emailRegex = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

if(emailRegex.test(myem))
{
    alert('Value is a email');
}
相关问题