JavaScript ошибка времени выполнения: Unable to get property 'split' of undefined or null reference
Это может быть случай, как целевой элемент с $(this)
не обладает свойством name
. Даже если это все равно, вы не можете применить метод .split()
, используя .prop()
, потому что он возвращает значение boolean true/false
вместо значения атрибута.
Поскольку .prop()
метод возвращает логическое true/false
не значение этого свойства, поэтому вы должны использовать .attr()
метод в данном случае:
var split = $(this).attr('name').split('&;');
Почему:
простой пример может быть ..
<input type="test" value="test" id="test" disabled />
Здесь вы можете увидеть значение, id и отключено, где значение и идентификатор могут использоваться для получения значений, таких как va lue имеет тест, а id - тест.
Но 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()
не дает значение этого, он spiting из логическое, доступно ли свойство disabled
для этого элемента.
Показать полный код, где вы пишете над строкой. –
Убедитесь, что $ (this) .prop ('name') return NOT null value –
похоже, что вы добавили 'name' в элемент, который не имеет этого свойства – billyonecan