2011-01-30 5 views
5

Tôi muốn xác thực biểu mẫu bằng jQuery. Vì vậy, tôi cần kiểm tra xem trường nhập liệu ("#validatename") có chứa ít từ không, chẳng hạn như 'Hoa Kỳ', 'Vương quốc Anh' hoặc 'Pháp'.Kiểm tra đầu vào với jQuery.contains()

Để cấm 'Chủng Quốc Hoa Kỳ"(Tôi sẽ thấy sau đó cho một mảng với tất cả các chuỗi cấm!), Tôi có ...

$("#validatename").keyup(function() 
{ 
var name = $("#validatename").val(); 
if(name != '') 
{ 
    if ($('#validatename:contains("United States of America")').length > 0) // http://stackoverflow.com/questions/902597/jquery-checking-to-see-if-div-contains-text-then-action 
    { 
    $("#validatename").css({ 
    "background-image": "url('no.png')" 
    }); 
    } 
    else 
    { 
    $("#validlastname").css({ 
    "background-image": "url('yes.png')" 
    }); 
    } 
} 
} 

... Nhưng nó không hoạt động: yes.png luôn hiển thị!

Bất kỳ sự giúp đỡ hoặc ý tưởng sẽ được đánh giá rất nhiều!

Thanks a lot.

Trả lời

8

thử

$("#validatename").val().indexOf("United States of America") > -1 
+1

Rất cám ơn cho phản ứng! Nó hoạt động! – Vincent

2

thay vì

$('#validatename:contains("United States of America")').length > 0 

bạn có thể sử dụng

name.indexOf("United States of America") != -1