Javascript dropdown 2基于dropdown 1给出json中的特定值

Javascript dropdown 2基于dropdown 1给出json中的特定值,javascript,angularjs,json,Javascript,Angularjs,Json,我有两个下拉列表,这是我的json,应该可以填充这些下拉列表: $scope.categorias = [ {nome:"Blusa", tamanhos:["36","38","40","42","44","46","48","50"]}, {nome:"Camisa", tamanhos:["36","38","40","42","44","46","48","50"]}, {nome:"Calça", tamanhos:["36","38","40","42","

我有两个下拉列表,这是我的json,应该可以填充这些下拉列表:

$scope.categorias = [
    {nome:"Blusa", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Camisa",  tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Calça", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Casaco", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Sobretudo", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Saia", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Vestido", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Blazer",tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Gravata", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Camisa", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"leggins", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Cueca", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Sutiâ", tamanhos:["55","60","65","70","75","80","85","90"]},
    {nome:"Pijama", tamanhos:["36","38","40","42","44","46","48","50","52","54","56","58","60"]},
    {nome:"Chapeu", tamanhos:["46","48","50","52","54"]},
    {nome:"Gorro", tamanhos:["46","48","50","52","54"]},
    {nome:"Sapato", tamanhos:["18","20","22","24","26","28","30","32","34","36","38","40","42","44","46","48","50","52"]},
    {nome:"Oculos", tamanhos:["54","55","56","57"]},
    {nome:"Bolsa", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Cachecol", tamanhos:["36","38","40","42","44","46","48","50"]},
    {nome:"Cinto", tamanhos:["36","38","40","42","44","46","48","50"]}
]
在第一个示例中,我只需要与名称相关的字符串,我是这样做的:

<select class="form-control" name="categorias" ng-model="produtos.categoria" ng-options="option.nome as option.nome for option in categorias | orderBy:'nome' " >
                    <option value="">- Selecciona uma categoria -</option>
</select>
<div class="form-group">
                <label>Tamanho</label>
                <select class="form-control" ng-model="produtos.tamanho" ng-options=" produtos.categoria for option in categorias.tamanhos"></select>
            </div>

-分类选择-
第二步我要的是塔曼霍斯人,和我第一步得到的名字有关

例如:在第一个drop中,我得到了Oculos,因此当我点击drop 1时,我希望drop 2填充:“54”、“55”、“56”、“57”,我给出了最小的示例:D

所以我做了这个:

<select class="form-control" name="categorias" ng-model="produtos.categoria" ng-options="option.nome as option.nome for option in categorias | orderBy:'nome' " >
                    <option value="">- Selecciona uma categoria -</option>
</select>
<div class="form-group">
                <label>Tamanho</label>
                <select class="form-control" ng-model="produtos.tamanho" ng-options=" produtos.categoria for option in categorias.tamanhos"></select>
            </div>

塔马尼奥

但是不起作用:我们需要一些帮助来弄清楚:/

categoria
的完整值设置为
produtos.categoria
,然后在第二个
选择中使用它

<select
    name="categorias"
    ng-model="produtos.categoria"
    ng-options="categoria as categoria.nome for categoria in categorias"
>
    <option value="">- Selecciona uma categoria -</option>
</select>

<select
    ng-model="produtos.tamanho"
    ng-options="id in produtos.categoria.tamanhos"
></select>

-分类选择-

注:请在代码中使用英语,至少如果您在这里寻求帮助。谢谢:)

您走在正确的道路上,您只需要使用类别的第二个字段进行第二次选择绑定,这意味着不要将
option.nome作为选项。nome
您应该将
选项作为选项。nome

angular.module('myApp',[]);
角度。模块('myApp')。控制器('ctrl',函数($scope){
$scope.categorias=[
{nome:“Blusa”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{名称:“卡米萨”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{nome:“Calça”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{名称:“卡萨科”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{nome:“Sobretudo”,tamanhos:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{名称:“Saia”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{nome:“Vestido”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{nome:“Blazer”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{nome:“Gravata”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{名称:“卡米萨”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{nome:“leggins”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{名称:“库埃卡”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{nome:“Suti–”,塔曼霍斯:[“55”、“60”、“65”、“70”、“75”、“80”、“85”、“90”],
{nome:“Pijama”,tamanhos:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”、“54”、“56”、“58”、“60”],
{nome:“Chapeu”,tamanhos:[“46”、“48”、“50”、“52”、“54”],
{nome:“Gorro”,tamanhos:[“46”、“48”、“50”、“52”、“54”],
{名称:“萨帕托”,塔曼霍斯:[“18”、“20”、“22”、“24”、“26”、“28”、“30”、“32”、“34”、“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”、“52”],
{nome:“Oculos”,塔曼霍斯:[“54”、“55”、“56”、“57”],
{nome:“Bolsa”,tamanhos:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{nome:“Cachecol”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”],
{名称:“Cinto”,塔曼霍斯:[“36”、“38”、“40”、“42”、“44”、“46”、“48”、“50”]
];
$scope.log=功能(cat){
控制台日志(cat);
};
});

-分类选择-
塔马尼奥
-塔曼霍酒店-