Я получил мой SessionMgr.cf c, работающий правильно благодаря Ageax. Мой вопрос сейчас заключается в том, является ли обработчик обратного вызова более быстрым, чем в настоящее время? Функция, которая заполняет showAll, находится здесь;
<cffunction name="GetShowAllDropDown" access="remote" output="true" returntype="any" returnFormat="json">
<Cfquery name="qReportShowAll" datasource="#Request.AppPDS#">
SELECT 0 AS rowValue, 'All' AS rowLabel
UNION ALL
SELECT 1 AS rowValue, 'Active' as rowLabel
UNION ALL
SELECT 2 AS rowValue, 'InActive' AS rowLabel
</Cfquery>
<cfset showAll = structNew()>
<cfset showAll = serializeJSON(qReportShowAll)>
<cfreturn showAll />
</cffunction>
- это моя основная функция верхнего уровня, которую я использую для каскадных действий, ShowAll загружает отчеты, выбирает отчет, загружает линии, выбирает строку, загружает узлы, созданные для it;
function loadShowAllReports() {
$.ajax({
url: 'cfc/Reports.cfc'
, type: 'get'
, async: false
, dataType: 'json'
, data: {
method: 'GetShowAllDropDown'
},
success: function(response) {
$.each(response.DATA, function(i, row) {
// get value of first row as descriptions;
var val = row[0];
var descr = row[1]
//console.log(val);
// append new options
$('##cboShowAllReports').append($('<option/>', {
value: val,
text: descr
}));
});
// initially populate this with default value of session.rShowAll
$('##cboShowAllReports').val(getValue('rShowAll'));
// reset reports to match
loadReports();
loadReportsActive();
loadCreateReportsActive();
loadReportTypes();
loadCreateReportTypes();
// preload Line defaults
loadLinesActive();
loadLinesActiveSearch();
loadLinesActiveCreate();
loadLinesResult();
loadLinesResultSearch();
loadLinesResultCreate();
},
error: function(msg) {
console.log('Error');
console.log(msg);
}
});
$('##cboShowAllReports').on('change', function() {
// onChange event, update the session
setValue('rShowAll', $(this).find(':selected').val());
// then the selected value
$('##cboShowAllReports').val($(this).find(':selected').val());
//reset reports on change to match
loadReports();
});
}
Предварительные загрузки просто создают раскрывающиеся списки заполнителей перед изменением их значений, указывающих c на то, что в отчете указано «rID», выбрана строка «lID». см. ниже; Существует ли более быстрый способ загрузки заполнителей и их значений, и наилучшим способом для этого является функция callBack. Я знаю, задайте вопрос 3 инженерам и получите 3 разных ответа, которые работают, и аргумент, над которым лучше всего работает. Любой совет будет оценен. TIA