У меня есть приложение ruby on rails, которое создает строку json и сохраняет его в атрибуте данных div. Это строка в файле рубинового перед тем, как вынесенное в Teh браузере:Почему jquery волнует этот селектор?
'{"all":{"$(\'#condition_fields .table_form div[data-id=2] select[data-attr=bar_type]\')":{"equal":"Baz"}}}'
Строка JSON выглядит следующим образом, когда осмотрены в браузере:
data-dependencies="{"all":{"$('#condition_fields .table_form div[data-id=2] select[data-attr=bar_type]')":{"equal":"Baz"}}}"
плагин JQuery потребляющего селектор в этой строке называя eval на нем. Селектор, когда выход на консоль с помощью плагина Jquery, выглядит так:
$('#condition_fields .table_form div[data-id=2] select[data-attr=bar_type]')
Я до сих пор найти комбинацию побега, которая производит полезный селектор для JQuery. Я либо получить
Error: Syntax error, unrecognized expression: #condition_fields .table_form div[data-id=2] select[data-attr=bar_type]
или
SyntaxError: Unexpected token ILLEGAL
в зависимости от того, как я кормлю строку (кавычках или без) в JQuery Eval в Teh консоли.
Любая помощь была бы принята с благодарностью!
Спасибо!
Вы можете подумать о замене выражения «freak out» – Bloodcount
Я вроде как снимаю в темноте здесь, но в чем причина использования ' ' в рубиновом файле, а не в буквальном пространстве? – Chowlett
Почему JSON отформатирован так? Можете ли вы изменить способ составления? Как сейчас, у вас есть оператор jquery как «ключ» объекта. Это означает, что вам нужно сделать некоторые довольно сомнительные вещи, чтобы извлечь из него что-нибудь полезное, например 'eval' на« ключ »объекта, который вы не можете надежно получить. – Cerbrus