jQuery:在span中包装输出文本?

时间:2013-07-23 03:48:06

标签: javascript jquery

我有一个jQuery脚本,在输出的文本后插入<input>。我的问题是如何在调用<span>之前将输出的文本包装在<input>中?

$(".todo-deadline").each(function() {
    $(this).html($(this).text() + "<input readonly='readonly' class='hasDatepicke2' type='text' value='"+$(this).text()+"' />");
});

1 个答案:

答案 0 :(得分:3)

尝试

$(".todo-deadline").each(function() {
    var $this = $(this), text = $this.text();
    $this.empty().append($('<span />', {
        text: text
    })).append('<input readonly="readonly" class="hasDatepicke2" type="text" value="' + text + '" />')
});

演示:Fiddle

或者

$(".todo-deadline").html(function(idx, html) {
    return '<span>' + html + '</span>' + '<input readonly="readonly" class="hasDatepicke2" type="text" value="' + html + '" />'
});

演示:Fiddle