我有文本框输入字段,我必须检查多个单词。我能够检查单个单词,但无法检查多个单词。单词列表存储在xml中,我必须检查。需要帮忙。 这里MyName是输入字段ID,lblMyName是标签ID。
if ($("#MyName").val() != '') {
$.ajax({
type: "GET",
url: "Xml/Badwords.xml",
dataType: "xml",
success: function (xml) {
$(xml).find('Badwords').each(function () {
var flag = true;
$(this).children().each(function () {
var tagName = this.tagName;
var val = $(this).text();
if (val.toLowerCase() == $("#MyName").val().toLowerCase()) {
$("#lblMyName").css("display", "block");
$("#lblMyName").text("Please refrain from using profanity.");
$(".postermyname").text('My Name);
flag = false;
return false;
}
答案 0 :(得分:1)
您必须在字边界上拆分输入值,然后将其与“坏”"进行比较。词语的
请注意,亵渎过滤器通常是一个非常糟糕的主意,并且通常会导致比他们解决的问题更多的问题
if ( $("#MyName").val().trim() != '' ) {
$.ajax({
type: "GET",
url: "Xml/Badwords.xml",
dataType: "xml",
success: function(xml) {
var input = $("#MyName").val().toLowerCase().split(/\b/),
flag = true;
$(xml).find('Badwords').each(function() {
$(this).children().each(function() {
var val = $(this).text().toLowerCase;
if (input.indexOf(val) !== -1) {
$("#lblMyName").css("display", "block")
.text("Please refrain from using profanity.");
flag = false;
}
});
});
});
});
}