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

JQuery $( "# field" ) имеет значение null?

У меня есть selectbox с месячными периодами.

Вот мой код:

$(function(){ 
                        $("#ppsub_ppterm_id").change(function(){ 
                                        var term = this.options[this.selectedIndex].text; 
                                        if(term == "Eenmalig"){ 
                                                $(".idealtd").show(); 
                                        }else{ 
                                                $(".idealtd").hide(); 
                                                //$("#ppsub_amount option:selected").val('anders'); 
                                        } 
                        }); 
        }); 
<select name="ppsub_ppterm_id" class="ppsub_ppterm_id" 
id="ppsub_ppterm_id" style="width: 100px; font-size: 11px;"> 
                                                <option value="M">Maand</option> 
                                                <option value="K">Kwartaal</option> 
                                                <option value="H">Halfjaar</option> 
                                                <option value="J">Jaar</option> 
                                                <option selected value="E">Eenmalig</option> 
                                        </select> 

Но когда я загружаю свою страницу я staight away, получите сообщение об ошибке:

$( "# ppsub_ppterm_id" ) имеет значение null

Строка 17

Любые идеи?

4b9b3361

Ответ 1

Похоже, что JQuery неправильно загружается. Какой источник/версия вы используете?

В качестве альтернативы это может быть столкновение пространства имен, поэтому попробуйте использовать jQuery явно вместо $. Если это сработает, вы можете использовать noConflict, чтобы убедиться, что другой код, который использует $, не сломается.

Ответ 2

chane '$' от jQuery, например:

$( "# myId" ) → jQuery ( "# ​​myId" )

Работает

Ответ 3

Даже если jQuery не смог найти элемент, он не будет пустым - это будет пустой объект jQuery.

Вы уверены, что загружен jQuery? Возможно ли, что другая используемая вами библиотека JavaScript вызывает конфликты?

Ответ 4

у вас есть "ppsub_ppterm_id" как класс, имя, идентификатор и т.д.

Вам нужно выбрать ONE и выбрать его. Нет необходимости, чтобы ID, NAME, CLASS для всех имели одинаковые значения.

Вы, вероятно, путаете ад из jQuery.

<a id="ppsub_ppterm_id"> = $("#ppsub_ppterm_id")

<a class="ppsub_ppterm_id"> = $(".ppsub_ppterm_id")

<a name="ppsub_ppterm_id">  = $("*[name=ppsub_ppterm_id]")

Выберите способ и пойдите с ним, но извлеките все эти избыточные атрибуты.

Ответ 5

Убедитесь, что вы запускаете код jQuery после загрузки документа:

$(document).ready(function() { /* put your stuff here */ });

Также убедитесь, что у вас нет других элементов управления с идентификатором "ppsub_ppterm_id" на вашей странице HTML.

Это первая вещь, которую я бы проверял.