Показать сообщение отдельно
Старый 19.10.2010, 12:52     # 1
BorLase
::VIP::
 
Аватар для BorLase
 
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150

BorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех Гуру
Объясните странность в работе JavaScript

Наткнулся сегодня на такое вот загадочное поведение кода:
Код:
<script type="text/javascript" language="JavaScript">
    function requestUserName(inp, outp, state) {
            state.innerText = "123 " + inp.value;
            outp.innerText = "QWE "  + inp.value;
    }
</script>

<body>
    <form>
        <input type="text" id="user_id"/>&nbsp;<input type="button" onclick="requestUserName(user_id, user_name, state);" value="Go"/>
        <hr/>
        <code>
        <div id="user_name"/>
        </code>
        <hr/>
        <code>
        <div id="state"/>
        </code>
        <hr/>
    </form>
</body>
Этот код отрабатывает только один раз, да и то криво (теряет один div) - потом валится с ошибкой.

Но, если заменить деларацию div на
Код:
<div id="user_name"></div>
...
<div id="state"></div>
все работает замечательно.

Вопрос, собственно - почему? Разве короткая форма тэга не равна полной пустой? Всю жизнь был уверен, что запись
Код:
<div id="user_name"></div>
полностью эквивалентна
Код:
<div id="user_name"/>
Может кто-то просветить на этот счет?
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people.
BorLase вне форума