Вам нужно избежать квадратных скобок, чтобы они не учитывались как селектор атрибутов. Попробуйте следующее:
alert($("#something\\["+id+"\\]").parent().parent().attr("id"));
См. Специальные символы в селекторах , в частности второй абзац:
Чтобы использовать любой из метасимволов ( такой как
blockquote>!"#$%&'()*+,./:;<=>?@[\]^``{|}~
) как буквальная часть имени, он должен быть экранирован двумя обратными косыми чертами:\\
. Например, элемент сid="foo.bar"
может использовать селектор$("#foo\\.bar")
. Спецификация CSS W3C содержит полный набор правил относительно правильных селекторов CSS . Также полезной является запись в блоге Матиаса Биненса в escape-последовательности символов CSS для идентификаторов .