Jquery 设置javascript变量,然后尝试使用警报,但收到空消息

Jquery 设置javascript变量,然后尝试使用警报,但收到空消息,jquery,Jquery,我写了一些简单的代码: var tm='<input type="checkbox" name="city[]" />'; tm=$(tm).val('2'); alert($(tm).text()); // <--- it does not have internal text so how do i see itself? var tm=''; tm=$(tm).val('2'); 警报($(tm).text());// 您需要.html() alert($(“”).

我写了一些简单的代码:

var tm='<input type="checkbox" name="city[]" />';

tm=$(tm).val('2');

alert($(tm).text()); // <--- it does not have internal text so how do i see itself?
var tm='';
tm=$(tm).val('2');
警报($(tm).text());// 您需要
.html()

alert($(“”).append(tm.html());
我找到了

var tm='<input type="checkbox" name="city[]" />';

tm=$(tm).val('2');

alert( $('<div>').append(          tm.clone()              ).remove().html());
var tm='';
tm=$(tm).val('2');
警报($('').append(tm.clone()).remove().html());

这也不行。输入元素没有子元素,并且不包括元素本身。
.remove()
是不必要的。
div
元素无论如何都不是DOM树的一部分。@Felix Kling,我认为这样会更安全,因为我可以将事件附加到元素,并且我想删除它EVERYTHING@Royi:这取决于您希望对jQuery对象执行的操作。。。再次将其传递给jQuery肯定是不必要的。@Felix Kling我谈到了
.clone
-,我问你是否认为它是necessary@RoyiNamir当前位置我是说这取决于上下文。如果元素已经是DOM的一部分,那么是的,
clone
将是必需的,否则将从当前位置将其删除。在你的情况下,这是没有必要的。
alert($("<div>").append(tm).html());
var tm='<input type="checkbox" name="city[]" />';

tm=$(tm).val('2');

alert( $('<div>').append(          tm.clone()              ).remove().html());