JQuery Ajaxing в Processmaker

Я использую веб-приложение под названием ProcessMaker.

У них нет поддержки jquery. Поэтому мне пришлось выяснить, как интегрировать его самостоятельно. На их форумах было много людей, которые пытались это сделать, поэтому, к счастью, теперь это задокументировано. Если кто-то хотел бы сделать это, вот ссылка, где я подробно описал процесс: jQuery с ProcessMaker

В моем вопросе теперь используется запрос jquery ajax. Чтобы использовать jquery с обработчиком, мне пришлось преодолеть 2 проблемы. Первая фильтрация Smarty, так как Processmaker использует шаблонизацию langauge. И вторая библиотека Maborak не допускает определенных вещей. Поэтому теперь я считаю, что это проблема мабарака, но я точно не знаю. Все, что я знаю, когда пытаюсь запустить свой код, консоль ошибок (firefox 4.x) дает мне следующую ошибку: jqXHR [i] не является функцией. Это происходит в строке 7323 моей jquery lib, которую я включил (версия 1.6.2).

У меня есть Googled, и все, что я придумал до сих пор, это то, что люди говорят, что это может быть проблема befreSend, и что ее отключение устраняет. Может быть, я не знаю, как отключить его правильно, но он не работает.

Если кто-то может помочь мне в этом, он будет очень признателен.

Спасибо, Зедд

В Processmaker существует библиотека «makorak», эта библиотека генерирует проблемы с другими библиотеками .. поэтому вы должны использовать jquery следующим образом …


var $ JQ = jQuery.noConflict ();

$ JQ ("# myField"). Value = 'cochalo';


надеюсь, что я помог

Попробуй это:

$.noConflict(); jQuery(document).ready(function($)){ $("button").click.function(){ $("p").text("jquery is still working"); } } 

before: вам нужно объявить это: var $ j = jQuery.noConflict ();

и … вы больше не должны использовать $ ()

вместо:

 use $j() 

пример:

 // Use jQuery via $j(...) $j(document).ready(function() { $j("div").hide(); }); 

это все

прочитайте новую документацию о ajax в dynaform в этом

или

Записать эту функцию

 function ajax(url, callback, error, method, cache, async) { async = async || true; //alert(cache); if (typeof(cache) == 'undefined') { cache = false; } if (typeof(method) == 'undefined') { method = 'GET'; } if (window.XMLHttpRequest) // code for IE7+, Firefox, Chrome, Opera, Safari { xmlhttp = new XMLHttpRequest(); } else // code for IE5, IE6 { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { if (typeof(callback) == 'function') { callback(xmlhttp.responseText); } } else { if (typeof(error) == 'function') { error(xmlhttp.status); } else { alert('خطا : لطفا مجددا تلاش کنید.'); } } } } var d = new Date(); var n = d.getTime(); var getExplode = url.split("?"); scriptName = url; param = ''; if (getExplode.length > 1) { scriptName = getExplode[0]; param = getExplode[1]; if (cache == false) { param = param + "&n=" + n; } } else { if (cache == false) { param = param + "n=" + n; } } if (method.toLowerCase() == 'post') { xmlhttp.open("POST", scriptName, async); xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.send(param); } else { xmlhttp.open("GET", scriptName + '?' + param, async); xmlhttp.send(); } } 

и использовать его так

 var url = ajaxUrl + "OperationRenovation.php?Command=GetDetail&IdDarkhast=" + ID + "&Code=" + Code + "&Mabna=" + Mabna; ajax(url, function(Response) { alert(response); }, function() { alert('مشکل در برقراری ارتباط با سرور'); }, 'post'); 

Я побежал $ .noConflict (); в консоли firebug на первой странице обработчика процессов, но произошла ошибка:

 $.noConflict(); TypeError: $.noConflict is not a function $.noConflict(); 

Я использую processmaker 3.1