Функция обратного вызова недоступна при изменении queryTemplate в CSWP - PullRequest
0 голосов
/ 05 июля 2018

Я работаю с веб-частями поиска контента, мне нужно запустить код после завершения процесса queryTemplate. Итак, я отправляю запрос через функцию

function sendQuery(myQuery) {
  setQuery2(myQuery, function() {
      console.log('Process done for setQuery2');
      window.open('Customer.aspx', '_blank');
      console.log('Process done');
  });
}

function setQuery2( query, callbackFunction ) {
  var ctrlA = $getClientControl( $("#containerDivA")[0] );
  var ctrlB = $getClientControl( $("#containerDivB")[0] );
  console.log('Set query');
  var q = query;
  q += ' proOrd:CurrR';

  ctrlA.get_dataProvider().set_queryTemplate(q);
  console.log('Running new query in A');
  ctrlA.get_dataProvider().issueQuery();

  ctrlB.get_dataProvider().set_queryTemplate(q);
  console.log('Running new query in B');
  ctrlB.get_dataProvider().issueQuery(); 
}

Ожидается, что window.open будет запущен, когда setQuery2 завершит процесс запроса сервиса, но он не работает, что-то не так с ним? Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 05 июля 2018

Я только что понял, что вызов callbackFunction был удален, поэтому не достигает кода.

Просто сделайте вызов callbackFunction () после процесса. Если есть какие-либо дополнительные комментарии, пожалуйста, продолжайте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...