Opened 12 years ago
Closed 12 years ago
#3417 closed bug (invalid)
.text() method doesn't work as expected
Reported by: | dimik | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.3 |
Component: | core | Version: | 1.2.6 |
Keywords: | text | Cc: | |
Blocked by: | Blocking: |
Description
i suppose when use the $('div.someclass').text() - it will empty div's textNode. But it also remove all elementNode inside.
Change History (3)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
i think it in the line 188:
document).createTextNode( text ) ); |
may be use something like this instead:
jQuery.each( this, function(){
jQuery.each( this.childNodes, function(){
if ( this.nodeType == 3 )
this.parentNode.removeChild(this);
});
});
document).createTextNode( text ) ); |
comment:3 Changed 12 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
This is intended behavior. Think about the text that should be returned for this HTML:
<div>foo<span>bar</span>baz</div>
If you were to try to change the text of that div without changing the descendant elements, you wouldn't have the control you need. Another way to think about it is that if you set the text of an element and then immediately get the text of that element, you shouldn't get a result that differs from what you just set.
textarea formatting cut my quotes i mean $('div.someclass').text('empty value or some text here')