Подтвердить что ты не робот

Проверьте, существует ли идентификатор DIV с JQuery

Использование Javascript Я пытаюсь проверить, существует ли в документе DIV с идентификатором "test_div".

Я использую

if (getElementById("test_div"))

ниже script, чтобы проверить, существует ли DIV в документе. Однако это не сработает. У меня нет большого опыта работы с Javascript; но из исследования, которое я сделал, похоже, что моя проблема может иметь какое-то отношение к вложенной функции.

script работает, если я удаляю

if (getElementById("test_div"))

Кто-нибудь знает, как проверить, существует ли в документе DIV с идентификатором "test_div" внутри функции, как показано ниже?

<div id="test_div"></div>

<script>
function loadInfo(){
var req = new Request({
    method:'get',
    url:'getinfo.php,
    noCache: true,
    onRequest: function(){

        if (getElementById("test_div")) {
            $('test_div').set('html', 'loading data');
        }

    },  
    onComplete:function(responseText, responseHtml){
        if (JSON.decode(responseText) != null){
            var data = JSON.decode(responseText);

            if (getElementById("test_div")) {
                $('test_div').set('html', data['test_div']);
            }

        }   
    },
    onFailure: function(){

        if (getElementById("test_div")) {
            $('test_div').set('html', '-');
        }

    }           
}).send();  
}
window.addEvent('domready', function(){
loadInfo();
});
</script>
4b9b3361

Ответ 1

Вам нужно будет сделать document.getElementById(id). Но, видя, как вы используете jquery, вы также можете сделать $(id).length > 0, чтобы проверить, существует ли элемент

Ответ 2

Ваш случай неверен в вашем примере кода. Вы должны вызвать getElementById, с нижним регистром d. Javascript чувствителен к регистру.

Если вы используете jquery, убедитесь, что префикс id равен #, например $( "# test_div" ), поэтому jquery знает, что вы хотите запросить идентификатор элемента.