要检查电子邮件地址是否来自gmail,我尝试了以下jQuery代码,但我得到了Uncaught TypeError: Cannot call method 'indexOf' of undefined
CODE
$( document ).ready(function() {
$("#sendit").click(
function() {
var str1 = $("#email").value;
var str2 = "gmail.com";
if(str1.indexOf(str2) != -1){
alert("found");
}
});
});
我的语法有错误吗?
答案 0 :(得分:1)
应该是
var str1 = $("#email").val();
$("#email")
返回一个jQuery包装器对象,它没有value
属性,它属于dom元素。 jQuery对象有一个返回值的方法val()。
答案 1 :(得分:1)
调用val()
方法。
var str1 = $("#email").val();
可能是你是jQuery Conflict的受害者。看看这个新小提琴中的代码是否适合你。
答案 2 :(得分:0)
您应该使用val()
代替value
更改
var str1 = $("#email").value;
到
var str1 = $("#email").val();
答案 3 :(得分:0)
应该使用val()而不是值
var str1 = $("#email").val()