Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 根据asp.net Core Razor页面中的第一个下拉列表填写第二个下拉列表_C#_Asp.net_Asp.net Core_.net Core_Razor Pages - Fatal编程技术网

C# 根据asp.net Core Razor页面中的第一个下拉列表填写第二个下拉列表

C# 根据asp.net Core Razor页面中的第一个下拉列表填写第二个下拉列表,c#,asp.net,asp.net-core,.net-core,razor-pages,C#,Asp.net,Asp.net Core,.net Core,Razor Pages,我在asp.net Core MVC中有一个表单,有多个文本输入字段和两个下拉选择。当第一次选择的索引更改时,第二次选择的选项需要更改。我用第一次选择选择一个项目,用第二次选择这个项目中的一行 如何在不丢失所有其他文本字段输入的情况下更改选择中的选项回发/重新加载 这是我到目前为止的代码 <form asp-controller="Settings" asp-action="Login" method="post"> ... <!--Project--> <s

我在asp.net Core MVC中有一个表单,有多个文本输入字段和两个下拉选择。当第一次选择的索引更改时,第二次选择的选项需要更改。我用第一次选择选择一个项目,用第二次选择这个项目中的一行

如何在不丢失所有其他文本字段输入的情况下更改选择中的选项回发/重新加载

这是我到目前为止的代码


<form asp-controller="Settings" asp-action="Login" method="post">

...

<!--Project-->
<select name="board">
    @if (userIndex == 0 || userData[userIndex].ProjectId == null)
    {
        <option selected disabled value="-1">Choose a Project</option>
    }
    @for (int i = 0; i < projectData.Count; i++)
    {
        if (userIndex != 0 && userData[userIndex].ProjectId == projectData[i].Idx)
        {
            <option selected value="@projectData[i].Idx">@projectData[i].projectName</option>
        }
        else
        {
            <option value="@projectData[i].Idx">@projectData[i].projectName</option>
        }
    }
</select>

<!--Row-->
<!--todo update this after project change and show only rows from one project-->
<select name="row">
    @if (userIndex == 0 || userData[userIndex].RowId == null)
    {
        <option selected disabled value="-1">Choose a Row</option>
    }
    @{
        List<Row> filteredRowData = rowData.Where(row => /*Match selected Project from name="board"*/).ToList();
    }
    @for (int i = 0; i < filteredRowData.Count; i++)
    {
        if (userIndex != 0 && userData[userIndex].RowId == rowData[i].Idx)
        {
            <option selected value="@rowData[i].Idx">@rowData[i].RowName</option>
        }
        else
        {
            <option value="@rowData[i].Idx">@rowData[i].RowName</option>
        }
    }
</select>

...

</form>

很多次都是这样的回答,看这一个,谢谢,这很有帮助。但这与其说是一个解决方案,不如说是一个变通办法/