我有一个带月月的选择框。
这是我的代码:
$(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>
但是,当我加载我的页面时,我就会出错:
$(“#ppsub_ppterm_id”)为空
第17行
有什么想法吗?
答案 0 :(得分:39)
听起来JQuery没有正确加载。您使用的是哪个来源/版本?
或者,它可能是命名空间冲突,因此请尝试明确使用jQuery
而不是$
。如果可行,您可以使用noConflict来确保使用$
的其他代码不会中断。
答案 1 :(得分:5)
$(“#myId”) - &gt; jQuery的( “#MYID”)
它有效
答案 2 :(得分:3)
即使jQuery找不到该元素,它也不会为null - 它将是一个空的jQuery对象。
你确定加载了jQuery吗?您正在使用的另一个JavaScript库是否可能导致冲突?
答案 3 :(得分:2)
你有“ppsub_ppterm_id”作为一个类,名字,id等......
您需要选择一个并选择它。 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]")
选择一种方式然后继续使用它,但取出所有这些冗余属性。
答案 4 :(得分:0)
确保在加载文档后运行jQuery代码:
$(document).ready(function() { /* put your stuff here */ });
另外,请确保HTML页面上没有其他ID为“ppsub_ppterm_id”的控件。
这是我要检查的第一件事。