0

嗨,我有以下

 <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)'/>

当我开始输入过滤选择时,它会调用 URL 并返回

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

但过滤选择中没有填充任何内容 - 服务器需要返回的 json 格式是什么?

4

1 回答 1

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

于 2014-12-13T17:21:13.750 回答