Проверка содержимого строки с помощью Javascript - PullRequest
0 голосов
/ 23 августа 2009

У меня есть проект, в котором я должен определить, содержит ли строка заданную строку. Пример: Что я ищу "website.com" Что может выглядеть как "jsngsowebsite.comadfjubj"

Пока мои собственные усилия привели к этому:

titletxt = document.getElementById('title');
titlecheck=titletxt.IndexOf("website.com");

if (titlecheck>=0)
{
  return false;
}

Что, похоже, не помогает, какие-либо предложения?

Ответы [ 4 ]

4 голосов
/ 23 августа 2009
function text( el ) {
    return el.innerText ? el.innerText : el.textContent;
}

function contains( substring, string ) {
    return string.indexOf(substring)>=0
}

contains( 'suggestions', text( document.getElementsByTagName('body')[0] ) )

Заменить 'ideas' и document.getElements ... на строку и ссылку на элемент dom.

titlecheck=titletxt.IndexOf("website.com");

Похоже, вы пытаетесь использовать IndexOf (строчный I) для элемента DOM, который даже не имеет этого метода, текст находится внутри textContent (стандартное свойство DOM) или innerText (специфическое свойство IE) .

1 голос
/ 23 августа 2009

Вы можете использовать метод indexOf ():

title = "lalalawebsite.comkkk";

// indexOf возвращает -1, если строка 'website.com' не найдена в 'title' titlecheck = title.indexOf ("website.com")> 0? "найдено": "не найдено";

предупреждение (Возможные проблемы);

1 голос
/ 23 августа 2009

Функции Javascript чувствительны к регистру - indexOf не IndexOf

0 голосов
/ 23 августа 2009

Вы также можете использовать String.match (...)

title = document.getElementById('title');
titletxt = title.innerText ? title.innerText : title.textContent
titlecheck = titletxt.match("website.com");

 if (titlecheck != null ) {
   return false;
 }

String.match возвращает ноль, если совпадение не найдено, и возвращает строку поиска ("website.com"), если совпадение найдено

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...