JavaScript运行时错误:无法获取未定义或空引用的属性“拆分”

时间:2015-08-21 07:33:45

标签: jquery

JavaScript运行时错误:无法获取未定义或空引用的属性“拆分”

var split = $(this).prop('name').split('&;');

请建议我。

1 个答案:

答案 0 :(得分:0)

JavaScript运行时错误:Unable to get property 'split' of undefined or null reference

情况可能就像$(this)的目标元素没有属性name一样。即使它仍然存在,您也无法使用.split()来应用.prop()方法,因为它返回布尔值true/false而不是属性值。

因为.prop()方法返回布尔值true/false而不是该属性的值,所以在这种情况下你应该使用.attr()方法:

var split = $(this).attr('name').split('&;');

为什么:

简单的例子可以是......

<input type="test" value="test" id="test" disabled />

在这里你可以看到value,id和disabled,其中value和id可以用来获取它的值,就像值有test,而id有test。

但是disabled是一个属性,它没有赋值给它。

检查以下测试用例:

var disabled = $('input[type="text"]').prop('disabled');
var id       = $('input[type="text"]').prop('id');

$('#console').html("disabled ::::: "+disabled + "<br> Id ::::: "+id);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" value="test" id="test" disabled="disabled" />
<div id='console'></div>

您可以在上面的示例中看到input有一个属性disabled="disabled"仍然.prop()没有给出它的值,它正在吐出一个布尔值是否属性{{1这个元素可用。