Я новичок в веб-интерфейсе, Dojo, Java и т. д. Если вы имеете в виду какую-либо дополнительную тему, пожалуйста, дайте ссылку на чтение. Это поможет.
Контекст:
У меня есть дизайн Gridx с использованием JsonStore, который принимает цель + идентификатор для URL. С фиксированным "id" Grid загружается хорошо.
У меня есть Динамическое дерево. Он отлично работает с ленивой загрузкой и т. Д.
Цель:
На основе события click (или dblclick) для данного узла в дереве мне нужно загрузить данные Gridx. Следовательно, если щелкнуть узел дерева "id":7, то JsonStore: /target/7 должен быть извлечен и загружен в Gridx.
Проблемы:
Как вы можете догадаться, при запуске нет допустимого свойства «id» для заполнения JsonStore. В обработчике событий щелчка дерева я получу это значение при щелчке пользователя. Следовательно, нельзя вызвать gridx.startup() в состоянии «готово». Хотя я "поместил" виджет в "готово".
Следовательно, у меня есть следующий фрагмент для обработки, ‹
// this function is called from tree event handler
function LatestTabGridxLoad( id ) {
console.log( "ID %s fetched.", id );
LatestTabGridxStore.idProperty = id;
LatestTabGridx.startup();
LatestTabGridx.body.refresh();
}
ready(function()
{
TabLatestAssetTree.startup();
LatestTabGridx.placeAt( "ReportMiddleTabLatestCenterContainer" );
}
Теперь проблема в том, что при первой загрузке JsonStore GET запускается только с /target/, без какого-либо «id» без какого-либо клика пользователя. Следовательно, сервер отвечает 405. Впоследствии, когда пользователь щелкает, снова тот же HTTP GET без «id» приводит к HTTP 405. Я не могу каким-то образом передать «id» URL-адресу GET. Я проверил JSON, он в идеальной форме, так как работает в отдельной таблице, которая определена декларативно.
Пожалуйста, предложите мне способы связать узел TREE через его «id» с Gridx. Также предложите, если подход, который я использую, является правильным способом решения этой проблемы.