2014-12-13 3 views
0

Привет У меня есть следующиеDojo FilterSelect не заселена JsonRest

<script type='text/javascript'>if (dijit.byId('assignedUserId') != undefined) { 
    dijit.byId('assignedUserId').destroy();}require([ 'dojo/store/JsonRest',  
'dijit/form/FilteringSelect', 'dojo/domReady!'], function(JsonRest, FilteringSelect){ 
    var jsonRest =  new JsonRest({  target: 'Welcome.do?call=JS&actionRefId=142' }); 
    var filteringSelect = new  FilteringSelect({  id: 'assignedUserId',  name: 
'assignedUserId',  value: '25',    store: jsonRest,  searchAttr: 'name', 
labelAttr: 'label' },  'assignedUserIdSelect').startup();}); 
</script> 
<input id='assignedUserIdSelect' name='value(assignedUserId)'/> 

Когда я начинаю вводить в FilteringSelect он вызывает URL и возвращает

{"identifier": "id", "label": "label", "items": [{ "name": "", "id": "0" , "label": "" },{ 
"name": "Lea M Test", "id": "26" , "label": "Lea M Test" }]} 

но ничего не заполняется в фильтрации выберите - каков формат json, который должен быть возвращен сервером?

ответ

0

Попробуйте вернуть массив объектов. Быстрый тест заключается в том, чтобы изменить цель JsonRest как простой php-файл. Если файлы ваших серверных процессов «.php», например, создать файл с именем что-то вроде Welcome.php со следующим содержанием:

<?php 
    $data = '[{ "name": "Abi Normal", "id": "0" , "label": "Abi Normal" },{"name": "Lea M Test", "id": "26" , "label": "Lea M Test" }]'; 
    echo $data; 
?> 

Затем измените JsonRest цель быть Welcome.php