Если вам нужен только атрибут onclick, попробуйте следующее: Предполагается, что вы не установили событие с помощью attachEvent или addEventListener.
elm.getAttribute("onclick");
Если вы хотите создать строку externalHTML (просто пообещайте не разбирать ее после создания):
function outerHTML(elm){
var ret = "<"+elm.tagName;
for(var i=0; i<elm.attributes.length; i++){
var attr = elm.attributes[i];
ret += " "+attr.name+"=\""+attr.nodeValue.replace(/"/, "\"")+"\"";
}
ret += ">";
ret += elm.innerHTML+"</"+elm.tagName+">";
return ret;
}
В большинстве случаев эта функция должна работать, но не учитывает пространства имен.