Как обрабатывать пустые или нулевые выражения при присваивании в качестве переменной JS? - PullRequest
1 голос
/ 07 марта 2012

Я использую выражения EL в своем коде JavaScript, как показано ниже:

cur_step = #{obj1.step};

Это прекрасно работает, когда внутри obj1.step действительно есть значение. Однако, если значение отсутствует или равно нулю, это то, как JavaScript отображается в браузере:

cur_step = ;

Это приводит к ошибке javascript, которая препятствует выполнению моего javascript вообще.

Как мне исправить эту проблему?

Объект obj1 - это Java-бин, заполненный на сервере. К вашему сведению, я использую JSF2.1 с jboss-el-2.0.jar в качестве реализации EL.

Ответы [ 2 ]

2 голосов
/ 07 марта 2012

Вы можете выполнить проверку на пустое выражение в своем выражении:

#{empty obj1.step ? 'something else' : obj1.step}

Пустое ключевое слово охватывает пустые и пустые строки.

0 голосов
/ 07 марта 2012

Вы можете использовать временный массив:

cur_step = [#{obj1.step}][0];
...