bombo
bombo

Reputation: 1891

javascript getElementById and convert it to String

is there a way to convert a javascript HTML object to a string? i.e.

var someElement = document.getElementById("id");
var someElementToString = someElement.toString();

thanks a lot in advance

Upvotes: 9

Views: 59245

Answers (5)

YASH
YASH

Reputation: 11

You just have to create one variable then store value into it. As in one my project I have done the same thing and it works perfectly.

var message = ""; 
message = document.getElementById('messageId').value;

test it.. It will definitely work.

Upvotes: -1

kennebec
kennebec

Reputation: 104840

You can always wrap a clone of an element in an 'offscreen', empty container. The container's innerHTML is the 'outerHTML' of the clone- and the original. Pass true as a second parameter to get the element's descendents as well.

document.getHTML=function(who,deep){ 
 if(!who || !who.tagName) return '';
 var txt, el= document.createElement("div");
 el.appendChild(who.cloneNode(deep));
 txt= el.innerHTML;
 el= null;
 return txt;
}

Upvotes: 2

Gregoire
Gregoire

Reputation: 24872

As Darin Dimitrov said you can use element.innerHTML to display the HTML element childnodes HTML. If you are under IE you can use the outerHTML propoerty that is the element plus its descendants nodes HTML

Upvotes: 0

Andy E
Andy E

Reputation: 344783

If you want a string representation of the entire tag then you can use outerHTML for browsers that support it:

var someElementToString = someElement.outerHTML;

For other browsers, apparently you can use XMLSerializer:

var someElement = document.getElementById("id");
var someElementToString;

if (someElement.outerHTML)
    someElementToString = someElement.outerHTML;
else if (XMLSerializer)
    someElementToString = new XMLSerializer().serializeToString(someElement); 

Upvotes: 18

Darin Dimitrov
Darin Dimitrov

Reputation: 1039498

someElement.innerHTML

Upvotes: 2

Related Questions