2013-10-15 41 views

回答

2

您可以使用jQuery验证用于检查电子邮件或不。

如:

function IsEmail(email) { 
var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/; 
return regex.test(email); 
} 

通过电子邮件的价值email参数ISEMAIL功能。

1

要添加到Vinod的答案,并将其与您指定的jquery-tokeninput插件相关联,我不相信有一种方法专门用于在添加之前验证自由文本输入。

我建议使用onAdd回调,通过Vinod的isEmail函数运行该项目(作为参数传递),然后删除新项目,如果它失败了正则表达式测试。

未经测试示例代码:(您可能需要改变remove方法,我不知道,如果它需要一个实际的对象,或JSON字符串)

$("#my-text-input").tokenInput("/url/to/your/script/",{ 
    onAdd: function(item){ 
     if(!isEmail(item.value)) $("#my-text-input").tokenInput("remove", item); 
    } 
}); 
0

我已经尝试了这一点,它对我来说工作正常..

For your kind reference.. 

resultsFormatter: function(item){  
var email_regex = /^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/i; 
console.log("item.email"+item.email); 
if(item.email != null){ 
console.log("Email lalal:: "+item.email); 
return "<li>" + item.name +" &lt;"+item.email+"&gt;"+"</li>"; 
} 
if(item.name.match(email_regex)){ 
return "<li>" +" Private Student "+ item.name+ "</li>"; 
}else{ 
return "<li style='display:none;'>" +" "+"</li>"; 
}     
} 
}