Не могу получить значение div'a методом .val()(При val() - выдает пустую строку) или .value(при value выдает undefined)

149
20 октября 2019, 17:30

Вот html:

jquery:

$("docement").ready(function () {
    $(".close").on("click",function (e) {
var el = $(this).parent().children(".kek");
console.log(el.val());

    });
})

И причем даже если я убираю свойство hidden, то все равно не показывает значение

Answer 1

Атрибут type="hidden" (как и свойство value) не имеет смысла для элемента div.

var el = $(this).closest(".deserve").find(".kek");
console.log(el.text());

или

<input type="hidden" class="kek" value="3" />

P.S. $("docement") -> $("document")

Answer 2

В описании val ясно указано, что он применяется для получения значений элементов формы, таких как input, select и textarea. При применении к другим элементам будет идти попытка получить значение свойства value. У элемента div это свойство отсутствует.

Вместо этого можно воспользоваться методом text либо html.

Если очень хочется использовать именно val, можно добавить valHooks для элементов div

jQuery.valHooks.div = { 
  get: function(el) { 
    return el.textContent; 
  } 
}; 
 
var el = $('#d'); 
console.log(el.val());
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 
<div id="d">div value</div>

READ ALSO
submit работает со второго раза

submit работает со второго раза

Мне нужно, чтобы этот код срабатывал с первого нажатия на сабмит

138
Достать номер из текста

Достать номер из текста

Дан текст, в нём есть номер телефона, может быть как мобильный, так и "домашний", определенного формата нет, длина тоже может быть разной, например...

148
Как правильно подключить SQL Server к Visual Studio?

Как правильно подключить SQL Server к Visual Studio?

Я только только начал изучать C# с ASPnet фреймворк

152
Как проверить что в тексте ровно 4 цифры?

Как проверить что в тексте ровно 4 цифры?

Wrong output for "1234\n" Expected: False But was: True

143