Не удалось вызвать test()

56
6

Я новичок в JavaScript. Это скрипка с моим кодом.

Если я удалю CDATA то он отлично работает на скрипке, но создаст проблему для редакторов XHTML, таких как eclipse:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Это мой JavaScript:

<![CDATA[
function test() {
alert(document.getElementById("divId"));
var regex = new RegExp('this',"gi");
document.getElementById("divId").innerHTML
= document.getElementById("divId").innerHTML.replace(regex,
function(matched)
{
return '<span class=\'highlight\'>' + matched + '</span>';
});
}
]]>

вот вопрос <div>:

<div id="divId">
This is the text This is the text This is the text This is the text
This is the text This is the text This is the the text
</div>

и я не могу вызвать функцию test(). Какие-либо предложения?

спросил(а) 2013-07-03T13:23:00+04:00 6 лет, 5 месяцев назад
2
Решение
77

Просто прокомментируйте линии CDATA:

...
// <![CDATA[
...
// ]]>

ответил(а) 2013-07-03T13:27:00+04:00 6 лет, 5 месяцев назад
Еще 1 ответ
66

Включите /* */как это


 /*<![CDATA[*/

function test(){
alert(document.getElementById("divId"));
var regex = new RegExp('this',"gi");
document.getElementById("divId").innerHTML
=document.getElementById("divId").innerHTML.replace(regex, function(matched)
{
return '<span class=\'highlight\'>' + matched + '</span>';
});

}

/*]]>*/

ответил(а) 2013-07-03T13:27:00+04:00 6 лет, 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема