C# 当我试图获取控制器上的值时,如何从窗体中获取隐藏值始终为零 @Html.HiddenFor(x=>x.StreamId,Model.StreamId) @LabelFor(m=>m.StreamId) @对于(int i=0;i

C# 当我试图获取控制器上的值时,如何从窗体中获取隐藏值始终为零 @Html.HiddenFor(x=>x.StreamId,Model.StreamId) @LabelFor(m=>m.StreamId) @对于(int i=0;i,c#,asp.net-mvc,C#,Asp.net Mvc,函数DDLStream(){ var k=$(“#流列表”).val(); $(“#sid”).val(k); 警报(k); } 你能试试这个吗 @Html.HiddenFor(x =>x.StreamId, Model.StreamId) @Html.LabelFor(m => m.StreamId) <select id="streamlist" name="list" onchange="DDLStream();"> @for (int i =

函数DDLStream(){ var k=$(“#流列表”).val(); $(“#sid”).val(k); 警报(k); } 你能试试这个吗

@Html.HiddenFor(x =>x.StreamId, Model.StreamId)     

@Html.LabelFor(m => m.StreamId)
<select id="streamlist" name="list" onchange="DDLStream();">
    @for (int i = 0; i < @Model.dtforStream.Rows.Count; i++)
    {  
        <option value="@Model.dtforStream.Rows[i][0]">@Model.dtforStream.Rows[i][1].ToString()</option>
    }
</select>

<p><input type="submit" value="Create" /></p>


function DDLStream() {
    var k = $("#streamlist").val();
    $("#sid").val(k);
    alert(k);
}

这有什么意义?为什么不使用
@Html.DropDownListFor()
直接绑定到
StreamId
?实际上,在我使用@Html.Hidden(“sid”,Model.StreamId)之前,没有一个元素具有
id=“sid”
,但没有一个只会创建一个不绑定到属性
StreamId
name=“sid”
输入的有效元素。您需要转到MVC站点并通过教程了解基础知识。主要问题不是我从中获取所选值,而是我无法在controller上获取此值。或者只是
$(“#StreamId”).val($(“#streamlist”).val();
$("#StreamId").val(int.parse($("#streamlist option:selected").val()));