热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用MVC视图页面中的<li>元素POST<ul>

如何解决《使用MVC视图页面中的<li>元素POST<ul>》经验,为你挑选了1个好方法。

所以我有一个列表,使用可以添加任意数量的项目.换句话说,我有一个

    可变长度的
  • 元素.
    可变长度
  • 元素表示用户
  • 在运行时添加元素,如果完成,则提交表单.所以我不知道
  • 有多少元素.
    像这样的东西:

        
    • item1
    • item2
    • /*...*/
    • itemN

    如果用户单击按钮,我会

  • 动态添加元素Javascript,如下所示:

    function newElement() {
        var li = document.createElement("li");
        var inputValue = document.getElementById("myInput").value;
        var t = document.createTextNode(inputValue);
        li.appendChild(t);
        document.getElementById("myUL").appendChild(li);
    }
    

    我的控制器的方法(AddList)看起来像这样:

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public async Task NewShoppingList(object list)
    {
        // I don't know how to accept that list
    
    }
    

    但这样我的参数listnull.我怎样才能

      用一些
    • 元素来获得它?



      1> Hossein..:

      ul并且li不是可提交的表单元素.您可以尝试以下操作.

      我不确定你的视图模型是什么样的,但它看起来像一个字符串值列表?那么它在你的视图模型中会是这样的:

      public class YourViewModel
      {
           public List Items { get; set; }
      }
      

      在您的视图中尝试以下操作:

      • item1
      • item2
      • /*...*/
      • itemN
      function addHidden(theLi, key, value) { // Create a hidden input element, and append it to the li: var input = document.createElement('input'); input.type = 'hidden'; input.name = key;'name-as-seen-at-the-server'; input.value = value; theLi.appendChild(input); } function newElement() { var li = document.createElement("li"); var inputValue = document.getElementById("myInput").value; var t = document.createTextNode(inputValue); li.appendChild(t); addHidden(li, 'your-model-propertyName' + li-Count+1, inputValue ); document.getElementById("myUL").appendChild(li); }

      当您发布时,这些项目仍应在列表中.

      [HttpPost]
      [AllowAnonymous]
      //[ValidateAntiForgeryToken]
      public async Task NewShoppingList(List list)
      {
          // I don't know how to accept that list
      
      }
      

      如果您不想为每个li添加隐藏字段,您可以获取所有li项并使用Ajax发送它们.

      像这样:

      function sendData() {
           var items = [];
              $("#myUL li").map(function () {
                  items.push(this.innerText);
              });
      
              $.ajax({
                  type: "POST",
                  data: {
                      list:  items
                  },
                  url: "/Home/NewShoppingList",
                  success: function (res) {
      
          }
      }
      

      我希望这有帮助.


推荐阅读
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • SpringBoot uri统一权限管理的实现方法及步骤详解
    本文详细介绍了SpringBoot中实现uri统一权限管理的方法,包括表结构定义、自动统计URI并自动删除脏数据、程序启动加载等步骤。通过该方法可以提高系统的安全性,实现对系统任意接口的权限拦截验证。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
author-avatar
唐瑄星
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有