在MVC中提交无序列表

时间:2018-11-13 11:07:47

标签: javascript asp.net-mvc

我是MVC的新手,但我已经注意到,对于无序列表没有帮助器。我想做的是,当用户单击复选框时,它会将项目添加到列表中,但是我在提交时难以将其添加到我的模型中

这是HTML

   <div class="row">
        <div class="col-md-6">
            <div class="attachmentPanel">

                <ul id="contractors"></ul>

            </div>
        </div>
    </div>

这是JavaScript,单击此复选框会触发

function SelectedUser(name) {

    var ul = document.getElementById("contractors");
    var li = document.createElement("li");
    li.appendChild(document.createTextNode(name));
    ul.appendChild(li);
}

基本上,当用户单击“提交”时,我希望将UL列表中的项目提交给我的控制器

1 个答案:

答案 0 :(得分:0)

如果列表仅包含字符串,则可以创建一个函数以从列表中获取值

<script>


function getvalues(){
  var mylist = []
   var elem = document.getElementById("contractors")
   for(let f of elem.children){
     mylist.push(f.innerText);
   }
  return mylist;
}
function submit(){
   var list = getvalues();
   $.ajax({
      type: "POST",
      url: @Url.Action("submitItems", "Demo")',
      data: JSON.stringify(list),
       dataType: 'application/json',
        success : function(response){
                alert(response);
        }
     });
}
</script>

<button onclick="submit()" >submit</button>

现在在您的控制器上

namespace WebApplication.Controllers
{
    public class DemoController : Controller
    {
        [HttpPost]
        public string submitItems(string[] items)
        {

            return "success";
        }
    }
}