Невозможно использовать символ <(меньше) в JavaScript внутри JSP
Я пытаюсь использовать символ <в функции JavaScript. Это вызывает проблему, потому что это тоже символ открытого тега.
<script type="text/javascript">
function ValidatePercentage() {
int NetValue = document.getElementById("_id4:netValue").value;
int GrassValue = document.getElementById("_id4:grassValue").value;
int percentValue = (NetValue/GrassValue);
if percentValue<80 {
alert(percent value too small)
}
}
</script>
Я использую JDeveloper версию 10G. Прямо перед символом 80 появляется красная линия. Любая помощь?
4 ответа
Вам нужны круглые скобки, а также необходимо изменить оповещение.
<script type="text/javascript">
function ValidatePercentage() {
int NetValue = document.getElementById("_id4:netValue").value;
int GrassValue = document.getElementById("_id4:grassValue").value;
int percentValue = (NetValue/GrassValue);
if (percentValue<80) {
alert('percent value too small');
}
}
</script>
Используйте раздел CDATA.
Символы типа "<" и "&" недопустимы в элементах XML.
"<" сгенерирует ошибку, потому что синтаксический анализатор интерпретирует ее как начало нового элемента. "&" сгенерирует ошибку, потому что парсер интерпретирует ее как начало символьной сущности.
Некоторый текст, например код JavaScript, содержит много символов "<" или "&". Во избежание ошибок код скрипта можно определить как CDATA.
Все внутри раздела CDATA игнорируется парсером.
Раздел CDATA начинается с "":
пример
<script>
<![CDATA[
function matchwo(a,b){
if (a < b && a < 0) then {
return 1;
} else {
return 0;
}
}
]]>
</script>
У меня такая же проблема в 2018 году! Похоже, что и сравнение работает тоже. Вместо использования "<" используйте ">". В моем случае я пытался сделать
if ( i < 1 )
Вместо этого я сделал
if ( i > 0 )
и, очевидно, изменил мой код в блоке if. Так что>> все в порядке.