Удалить цитату из переменной jQuery - PullRequest
0 голосов
/ 30 марта 2012

Итак, я делаю Ajax-запрос в приложении Rails, и у меня возникает небольшая проблема, когда я хочу восстановить переменную.

Допустим, данные, которые я передаю в Ajax-запрос, выглядят так

var dataAll = ({dataForKey: dataItemID});

И допустим, что переменная в две секунды восстанавливается следующим образом

var dataForKey = '<%= feed_item.class.to_s.foreign_key %>';
var dataItemID = '<%= feed_item.id %>';

Представьте, что feed_item.class.to_s.foreign_key возвращает photo.Итак, значение dataForKey равно 'photo'.

Но мне нужно, чтобы dataForKey было photo, а не 'photo', и я не могу сказать

var dataForKey = <%= feed_item.class.to_s.foreign_key %>;

, потому чтоjQuery ищет переменную с именем photo ...

Итак, подведем итоги: как я могу удалить цитату из dataForKey?

Ответы [ 3 ]

2 голосов
/ 30 марта 2012

Вместо того, чтобы сохранять имя ключа в переменной, просто выведите его напрямую:

var dataItemID = '<%= feed_item.id %>';
var dataAll = ({<%= feed_item.class.to_s.foreign_key %>: dataItemID});

Или создайте свой объект и установите значения отдельно:

var dataForKey = '<%= feed_item.class.to_s.foreign_key %>';
var dataItemID = '<%= feed_item.id %>';
var dataAll = {};
dataAll[dataForKey] = dataItemID;
0 голосов
/ 30 марта 2012
dataForKey = dataForKey.replace("'", "");
0 голосов
/ 30 марта 2012

Вы можете попробовать и использовать eval:

var dataForKey = eval('<%= feed_item.class.to_s.foreign_key %>');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...