【发布时间】:2015-09-09 07:13:03
【问题描述】:
用户应在选择某些组后选择主机。我已经使用JQuery chained remote Plugin 构建了一个链式选择,用于通过组选择主机。以下代码正在使用并且工作正常:
$('#hosts').remoteChained({
parents: "#hosts_group",
url: "ajax/getHosts"
});
<select id="hosts_group" name="hosts_group" class="form-control">
<option value="">Bitte Gruppe selektieren</option>
<option value="1>Some Groups</option>
</select>
<select id="hosts" name="hosts"></select>
但最终结果应该为主机提供一个双重列表框,用户可以在其中从任何组中选择主机。我尝试将多个标签添加到主机选择并通过以下 sn-p 添加JQuery DuallistBox:
$('#hosts').remoteChained({
parents: "#hosts_group",
url: "ajax/getHosts"
}).DualListBox({json: false});
双列表框显示正常,但选择组时没有显示主机。
JSON 数据如下所示:
[
{'name': 'host1', 'id': '1'},
{'name': 'host2', 'id': '2'}
]
选择不同的组时,JSON也包含不同的主机。链式选择插件通过以下请求请求数据:ajax/getHosts/?hosts_group=selectedId
只需将链式选择与普通的多选一起使用即可。 问题是在双列表框中显示 json 数据,每个选择都不同。
我尝试构建一个 JsFiddle 示例,但它不起作用,因为不会加载外部库,而且我不太明白如何通过不同的选择手动提供 json。
【问题讨论】:
-
不确定,但 URL"/ajax/getHosts" 中似乎缺少初始反斜杠
-
那部分是正确的,将 ajax/getHosts 添加到当前 URL 时,我得到了 json 数据。只需正常选择,数据即可正常显示。它只是不显示双列表框中的数据。
-
分享您从服务器获得的 JSON 响应。如果您将代码小提琴jsfiddle.net 与代码放在一起,将会非常有帮助。
-
添加了 json 响应并更详细地解释了链式选择是如何工作的。
标签: javascript jquery select chained