Відповіді:
Замість .val()використання .text():
$(".ui-datepicker-month").live("click", function () {
var monthname = $(this).text();
alert(monthname);
});
Або в jQuery 1.7+ використовуйте on()як liveзастаріле:
$(document).on('click', '.ui-datepicker-month', function () {
var monthname = $(this).text();
alert(monthname);
});
.val()призначений для елементів типу введення (включаючи текстові області та випадаючі меню), оскільки ви маєте справу з елементом із текстовим вмістом, використовуйте .text()тут.
Я думаю, ти хочеш .text():
var monthname = $(this).text();
Щоб отримати текст автоматично згенерованого значення діапазону, просто виконайте наступне:
var al = $("#id-span-name").text();
alert(al);
-Ніхто з вищезазначеного постійно не працював у мене. Отже, ось розроблене нами рішення, яке працює стабільно у всіх браузерах, оскільки воно використовує основні функціональні можливості. Сподіваюся, що це може допомогти іншим. Використання jQuery 8.2
1) Отримайте об’єкт jquery для "span". 2) Отримати об’єкт DOM зверху. Використання jquery .get (0) 3) Використання внутрішнього тексту об'єкта DOM отримує текст.
Ось простий приклад
var curSpan = $(this).parent().children(' span').get(0);
var spansText = curSpan.innerText;
HTML
<div >
<input type='checkbox' /><span >testinput</span>
</div>
.live()припинено у версії 1.7 та вилучено в версії 1.9+