Javascript 传递类型列表的数据<;int>;从Razor视图(元素是在JS中创建的)到控制器
如何将JS创建的select标记中的数据传递给控制器? 以下是我创建选择标记的函数:Javascript 传递类型列表的数据<;int>;从Razor视图(元素是在JS中创建的)到控制器,javascript,asp.net,asp.net-mvc,asp.net-core,razor,Javascript,Asp.net,Asp.net Mvc,Asp.net Core,Razor,如何将JS创建的select标记中的数据传递给控制器? 以下是我创建选择标记的函数: function changeFunc() { var elements = document.getElementsByClassName('selector2'); while (elements.length > 0) { elements[0].parentNode.removeChild(elements[0]); } var selector =
function changeFunc() {
var elements = document.getElementsByClassName('selector2');
while (elements.length > 0) {
elements[0].parentNode.removeChild(elements[0]);
}
var selector = document.getElementById('selector');
var selectedValue = selector.value;
console.log(selectedValue);
@foreach (var item in Model.Rooms)
{
<text>
if (@item.RoomID == selectedValue)
{
var selectedValue2 = @item.Capacity;
}
</text>
}
var inputContainer = document.getElementById('for-input');
for (var i = 0; i < document.getElementById('selector').value; i++)
{
var selector2 = inputContainer.appendChild(document.createElement("select"));
selector2.className = "selector2";
var option1 = document.createElement("option");
option1.value = "0";
option1.text = "Choose a client";
option1.defaultSelected = true;
selector2.appendChild(option1);
selector2.tagName = "ClientsIDs";
@foreach (var item in Model.Clients)
{
<text>
var optionz = document.createElement("option");
optionz.value = @item.ID;
optionz.text = he.decode("@item.Name");
selector2.appendChild(optionz);
</text>
}
}
}
这是我的财产:
public List<int> ClientsIDs { get; set; }
公共列表ClientsIDs{get;set;}
您应该这样设置名称属性:
selector2.setAttribute("name", "ClientsIDs[" + i +"]");
呈现Html
selector2.setAttribute("name", "ClientsIDs[" + i +"]");