Я работаю с использованием библиотеки scriptaculous. Однако я сталкиваюсь с некоторыми проблемами с включением библиотеки JSON для библиотеки прототипов. Он автоматически добавляет методы toJSONSTring и parseJSONSTRING ко всем объектам, и это вызывает хаос в некоторых местах. Как будто я не могу использовать функцию Ajax Updater и подозреваю ее из-за этого метода toJSONSTring, который был присоединен к моему объекту параметров, который я передаю ему.
Есть ли в любом случае отключить или хотя бы каким-то образом удалить функцию, которая была добавлена к объекту.
EDIT :::
На самом деле я пытаюсь сделать запрос AJAX, и я сталкиваюсь с проблемой в
Ajax.Updater = Class.create(Ajax.Request,....
часть библиотеки прототипов. В той части, где он должен выполнить и опубликовать AJAX-запрос, он этого не делает, особенно по адресу:
$super(url, options);
Чтобы быть точным, я использую эту сортируемую и редактируемую сетку таблицы здесь по этому адресу:
http://cloud.millstream.com.au/millstream.com.au/upload/code/tablekit/index.html
Обычно вы нажимаете на ячейку таблицы, чтобы редактировать ее, и нажимаете кнопку OK для подтверждения. При нажатии на кнопку делается ajax-запрос.
Редактируемая функция таблицы вызывает функцию обновления Ajax следующим образом в функции отправки:
submit : function(cell, form) {
var op = this.options;
form = form ? form : cell.down('form');
var head = $(TableKit.getHeaderCells(null, cell)[TableKit.getCellIndex(cell)]);
var row = cell.up('tr');
var table = cell.up('table');
var ss = '&row=' + (TableKit.getRowIndex(row)+1) + '&cell=' + (TableKit.getCellIndex(cell)+1) + '&id=' + row.id + '&field=' + head.id + '&' + Form.serialize(form);
this.ajax = new Ajax.Updater(cell, op.ajaxURI || TableKit.option('editAjaxURI', table.id)[0], Object.extend(op.ajaxOptions || TableKit.option('editAjaxOptions', table.id)[0], {
postBody : ss,
onComplete : function() {
var data = TableKit.getCellData(cell);
data.active = false;
data.refresh = true; // mark cell cache for refreshing, in case cell contents has changed and sorting is applied
}
}));
},
Проблема в том, что запрос никогда не выполняется, и я продолжаю нажимать кнопку ОК, но безрезультатно.
EDIT ::::::::::::::::
Я все еще нахожусь в тупике - я даже пытался вызвать функцию Ajax.Updater самостоятельно, и она не будет работать вообще. Похоже, эта функция официально внезапно оказалась бесполезной. Я внес изменения, которые вы сказали, но все безрезультатно :( Честно говоря, у меня нет вариантов здесь - еще одна идея - отказаться от этого набора и искать что-то еще, имеющее аналогичную функциональность в надежде, что ЭТО МОЖЕТ работать!