previousElementSibling
не поддерживается до IE9.
http://www.quirksmode.org/dom/w3c_core.html#t84
Вот функция, которая должна работать. Еще не проверял. Кажется, работает.
var previousElementSibling = function( el ) {
if( el.previousElementSibling ) {
return el.previousElementSibling;
} else {
while( el = el.previousSibling ) {
if( el.nodeType === 1 ) return el;
}
}
}
$( previousElementSibling(submitter.parentNode.parentNode) )
РЕДАКТИРОВАТЬ:
Вы не упомянули jQuery,но вы, похоже, используете его API.Если это так, вы можете просто сделать это:
$(submitter).closest('form').prev().find('#mark_as_broken').show();
Исходя из вашей разметки, кажется, что вы должны использовать .find()
вместо .children()
.