JQuery передача переменных в объекты проблема
Вот мой фрагмент кода:
$('.content .form-submit').each(function(index) {
var id = $(this).attr('id');
var selector = "#" + id;
}
Перечисленные выше переменные выходят просто отлично. Они возвращают ajax-comments-submit-398 #ajax-comments-submit-398 (или любой другой номер формы на странице) просто отлично. Проблема в том, что мне нужно передать результат динамически следующему объекту (вместо [ID] и [SELECTOR] ниже.
var obj3 = {
"ahah": {
[ID]: {
"url": "/ajax_comments/js",
"event": "click",
"keypress": null,
"wrapper": "comment-form-content",
"selector": [SELECTOR],
"effect": "ajaxCommentsSubmit",
"method": "before",
"progress": {
"type": "1bar",
"message": "Please wait..."
},
"button": {
"op": "Save"
}
}
}
}
я пытался
var obj3 = {
"ahah": {
id: {
"url": "/ajax_comments/js",
"event": "click",
"keypress": null,
"wrapper": "comment-form-content",
"selector": selector,
"effect": "ajaxCommentsSubmit",
"method": "before",
"progress": {
"type": "1bar",
"message": "Please wait..."
},
"button": {
"op": "Save"
}
}
}
}
но объект буквально читает "селектор" и "id", а не переменную, которую я хочу передать (ajax-comments-submit-398)
Как бы я это сделал?
1 ответ
Решение
Вы должны сделать это так:
var obj3 = {
"ahah": {}
}
obj3.ahah[id] = {
"url": "/ajax_comments/js",
"event": "click",
"keypress": null,
"wrapper": "comment-form-content",
"selector": selector,
"effect": "ajaxCommentsSubmit",
"method": "before",
"progress": {
"type": "1bar",
"message": "Please wait..."
},
"button": {
"op": "Save"
}
}