Кому надо разобрался как это делается для FCKEditor.Делается вызов функции родительского окна в событии OnSuccess. Конечно бы хотелось узнать как это делается через ООП, НО ПОЛУЧИВ НЕДОВОЛЬСТВА ОТ НЕККОТОРЫХ ТОВАРИЩЕЙ ПРИШЛОСЬ СДЕЛАТЬ В ЛОБ.(А ЧЕРЕЗ ООП БЫЛО Б ИНТЕРЕСНЕЕ
function Ok()
{
//var returner=false;
oEditor.FCKUndo.SaveUndoStep() ;
oActiveEl = CreateNamedElement( oEditor, oActiveEl, 'INPUT',
{id: GetE('txtName').value,
name: GetE('txtName').value,
type: GetE('txtType').value,
value: GetE('txtValue').value } ) ;
//SetAttribute( oActiveEl, 'value', GetE('txtValue').value ) ;
//óñòàíàâëèâàåì íóæíûå çíà÷åíèÿ äëÿ àòðèáóòîâ
var idElement = GetE('txtName').value;
if (idElement!=''||idElement!=null){
//çàïèñûâàåì ðåçóëüòàò â ÁÄ
//êîëè÷åñòâî ñâîéñòâ ýëåìåíòà - òèïà onclick,onblur, onchange è òä è òï
//var returner = false;
var events = new Array('click');
myQueue = new Request.Queue();
myQueue.onSuccess = function(){
//returner = true;
window.parent.CloseDialog();
//alert(typeof Ok);// return true;
}
var datap,index,j;
j=0;
for(var i=0;i<events.length;i++){
//áåðåì äàííûå äëÿ ñåðâåðà
if($(events[i] + '-server-page-check').get('checked')){
datap = 'hiddenName=' + GetE('txtHiddenName').value +
'&idElement='+idElement+'&task=saveToDatabase&elem ent=button&side=server&idTask=' +
$(events[i] + '-idTask').value + '&idAnswer=' +
$(events[i] + '-idAnswer').value + '&API=' +
$(events[i] + '-serverAPI').value + '&APIParams=' +
$(events[i] + '-APIparamsServer').value +
'&idView=' + GetParam('id') + '&ElementEvent=' + events[i];
//GetE('txtValue').value = datap;
eval("var r" + j + " = new Request({" +
"url : '../fckdialog.ajax.php'," +
"data : '" + datap + "'," +
//"onSuccess : function(responseText, ResponseXML){alert(responseText);}," +
"method : 'post'" +
"});" +
"myQueue.addRequest('r" + j + "', r" + j + ");");
j++;
}
//áåðåì äàííûå äëÿ êëèåíòà
if($(events[i] + '-client-page-check').get('checked')){
datap = 'hiddenName=' + GetE('txtHiddenName').value +
'&idElement='+idElement+'&task=saveToDatabase&elem ent=button&side=client&API=' +
$(events[i] + '-clientAPI').value + '&APIParams=' +
$(events[i] + '-APIparamsClient').value +
'&idView=' + GetParam('id') + '&ElementEvent=' + events[i];
eval("var r" + j + " = new Request({" +
"url : '../fckdialog.ajax.php'," +
"data : '" + datap + "'," +
"method : 'post'" +
"});" +
"myQueue.addRequest('r" + j + "', r" + j + ");");
j++;
}
}
for(var i=0;i<j;i++)eval('r'+i + '.send()');
/*while(!returner){
alert('Èäåò çàïèñü â ÁÄ!');
setTimeout('',1000);
}*/
//return true;
//setTimeout('',10000);
} else
return false ;
}