1

我正在尝试创建这个:

<label><input id=""><span>Lorem ipsum dolor</span></label>

这是我的代码:

$('.property .includes')
    .append('<label>').html(
        $('<input>').attr('id', this.id) +
        $('<span>').html(this.description)
    );

它似乎不起作用,正如它所说的那样,“[Object] [Object]”。

如何创建上面的代码?

4

4 回答 4

4

您必须将代码更改为:

$('<label/>')
    .append( $('<input>').attr('id', this.id) )
    .append( $('<span>').html(this.description) )
    .appendTo('.property .includes');

我也很确定您正在尝试将 span 和 input 元素附加到 label 元素。

我也选择使用.appendTo而不是嵌套函数调用:

$('.property .includes').append(
  $('<label/>')
    .append( $('<input>').attr('id', this.id) )
    .append( $('<span>').html(this.description) )
);
于 2013-06-03T14:29:53.150 回答
1

您应该执行以下操作:

var label = $("<label />").html(
    "<input id='" + this.id + "'>" +
    "<span>" + this.description + "</span>"
);
$('.property .includes').append( label );
于 2013-06-03T14:29:02.363 回答
1

mkoryak 打败了我。

    $('.property .include').append($('<label></label>')
                              .append($('<input></input>').attr('id', this.id))
                              .append($('<span></span>').html(this.description)));

这也是一个JsFiddle

于 2013-06-03T14:41:45.183 回答
1

尝试使用如下,

$('.property .includes').append(
           $('<label />').append($('<input />', {'id': this.id}))
                         .append($('<span />').html(this.description))
     );

演示:http: //jsfiddle.net/FJAjK/

于 2013-06-03T14:32:06.093 回答