Мы используем Prototype для всей нашей обработки запросов Ajax, и для простоты мы просто визуализируем HTML-контент, который затем присваивается соответствующему div с помощью следующей функции:
function ajaxModify(controller, parameters, div_id)
{
var div = $(div_id);
var request = new Ajax.Request
(
controller,
{
method: "post",
parameters: parameters,
onSuccess: function(data) {
div.innerHTML = data.responseText;
},
onFailure: function() {
div.innerHTML = "Information Temporarily Unavailable";
}
}
);
}
Однако мне иногда нужно выполнить Javascript в ответе HTML, и этот метод кажется неспособным сделать это.
Я пытаюсь свести к минимуму список функций для вызовов Ajax по ряду причин, поэтому, если есть способ изменить существующую функцию, не нарушая всюду, где она используется в настоящее время, или способ изменить HTML-ответ, который приведет к выполнению любого встроенного JavaScript, что было бы здорово.
В порядке примечания, я уже пытался добавить "evalJS: 'force" "к функции, чтобы посмотреть, что она будет делать, и это ничего не поможет.