Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Подскажите, пожалуйста, как по-компактней реализовать (https://javascript.ru/forum/dom-window/31644-podskazhite-pozhalujjsta-kak-po-kompaktnejj-realizovat.html)

wayzer 15.09.2012 16:38

Подскажите, пожалуйста, как по-компактней реализовать
 
Доброго времени суток, подскажите, пожалуйста, как реализовать, избежав громоздкости.
В общем у меня 2 текстовых поля, как сделать, чтобы если одно из значений равнялось null, то бишь не заполнено, то кусок html кода не выводился.

var obj= {


"1":"123",

"2":" " };

xxx.innerHTML = '<html> ляляля = '+obj.1+' лололол = '+ obj.2 +' <html>';


Получается obj.2=null и мне нужно, чтобы полученный результат в html "лололол = ", вообще, не выводился.


Заранее, спасибо.

oneguy 15.09.2012 17:55

К примеру, так:
xxx.innerHTML = '<html> ляляля = '+obj[1]+(obj[2]!=null?' лололол = '+ obj[2]:'') +' <html>';

wayzer 15.09.2012 18:28

Спасибо, то что нужно.

wayzer 15.09.2012 19:30

Сделал так
(obj.hilt!=null?' <text style="margin:0% 4%; color: #1e73cd;">Hilt '+ obj.hilt +'</text>')
не работает ... Скрипт вообще не хочет выполняться.

Работает только так

(obj.hilt=="null"?'<text style="margin:0% 4%; color: #1e73cd;">Hilt ('+ obj.hilt:')</text>')


Все после знака ":" не выводится при значении null, если ставить вместо ":" "+", то скрипт не пашет...

devote 15.09.2012 19:59

Цитата:

Сообщение от wayzer
(obj.hilt!=null?' <text style="margin:0% 4%; color: #1e73cd;">Hilt '+ obj.hilt +'</text>')

(obj.hilt!=null&&' <text style="margin:0% 4%; color: #1e73cd;">Hilt '+ obj.hilt +'</text>')

wayzer 15.09.2012 20:09

Вместо сокрытия кода пишет "false"

devote 15.09.2012 20:14

Цитата:

Сообщение от wayzer
Вместо сокрытия кода пишет "false"

а на что вы его применяете? более полный код покажите

wayzer 15.09.2012 20:21

div1.onmouseover = function () {
div2.innerHTML = (obj.hilt!=null&&' <text style="margin:0% 4%; color: #1e73cd;">Hilt '+ obj.hilt +'</text>')
};


obj.hilt - значение поля, если поле не заполнено, мне нужно чтобы код со значением не встраивался в div2, при наведении на div1, если поле заполнено, то при наведении должен выводится html + значение + html

lord2kim 15.09.2012 21:43

wayzer,
div1.onmouseover = function () {
div2.innerHTML = obj.hilt == null ? '<text style="margin:0% 4%; color: #1e73cd;">Hilt ('+ obj.hilt +')</text>' : '';
};

wayzer 15.09.2012 22:05

obj.hilt !== null ? '<text style="margin:0% 4%; color: #1e73cd;">Hilt ('+ obj.hilt +')</text>' : ''

Код всегда открыт
obj.hilt == null ? '<text style="margin:0% 4%; color: #1e73cd;">Hilt ('+ obj.hilt +')</text>' : ''

Код всегда скрыт, независимо от того, значение = null или нет...

Помогите, пожалуйста, нужно чтобы при обновлении значения поля (по новой заполнить), то значение проверялось и если оно не равно null, то выводилось вместе с html кодом...


Часовой пояс GMT +3, время: 22:42.