无法将文本设置为li元素

时间:2014-07-30 13:43:19

标签: jquery

我正在尝试将日期和时间设置为类

下的i元素

这是我的HTML

这是我试过的方式。

<li class="dateTime">
            <i>
            </i>
         </li>


function displayDate() 
{
    var datetime = getDateTime();
    $('.dateTime').closest('i').text(datetime);
}

function getDateTime() {

   return "30-Jul-2014" ;
}

这是我的jsfiddle

http://jsfiddle.net/qu8E4/2/

请帮我解决这个问题??

3 个答案:

答案 0 :(得分:2)

尝试使用.find()代替.closest()

请注意,您正在寻找descendant而不是parent,那么我们为什么需要使用.closest()

$('.dateTime').find('i').text(datetime);

DEMO

答案 1 :(得分:0)

使用find选择器作为死灵元素

 $('.dateTime').find('i').text(datetime);
       OR 
$('.dateTime i').text(datetime);

注意:closest将选择父母(祖先)而不是孩子

答案 2 :(得分:-1)

试试这个:

function getDateTime() {
    var now = new Date();
    var year = now.getFullYear();
    var month = now.getMonth() + 1;
    var day = now.getDate();
    var hour = now.getHours();
    var minute = now.getMinutes();
    var second = now.getSeconds();
    if (month.toString().length == 1) {
        var month = '0' + month;
    }
    if (day.toString().length == 1) {
        var day = '0' + day;
    }
    if (hour.toString().length == 1) {
        var hour = '0' + hour;
    }
    if (minute.toString().length == 1) {
        var minute = '0' + minute;
    }
    if (second.toString().length == 1) {
        var second = '0' + second;
    }
    var dateTime = year + '/' + month + '/' + day + ' ' + hour + ':' + minute + ':' + second;
    return dateTime;
}
$(document).ready(function(){
displayDate();
});

function displayDate() 
{
    var datetime = getDateTime();

    $('.dateTime>i').text(datetime);
}

<强> JSFIDDLE