Hrm, we've run into this before. :-/

The [jQuery Selectors doc](http://api.jquery.com/category/selectors/) says, "to use any of the meta-characters ( such as !"#$%&'()*+,./:;<=>?@[\]^`{|}~ ) as a literal part of a name, it must be escaped with two backslashes", and it points to a lengthy blog post detailing [CSS character escape sequences](http://mathiasbynens.be/notes/css-escapes). Meanwhile, several people have written functions to do general escaping of such strings:

* http://alexandregiannini.blogspot.com/2011/05/escaping-strings-for-jquery-selectors.html
* http://totaldev.com/content/escaping-characters-get-valid-jquery-id
* http://stackoverflow.com/questions/739695/jquery-selector-value-escaping

Let's add a function like those to our script and use it to do the escaping here.

cc: @potch