我在MVC中动态生成了多个CheckBox,然后我怎么能在Controllers上获取被选中的CheckBox的值呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我在MVC中动态生成了多个CheckBox,然后我怎么能在Controllers上获取被选中的CheckBox的值呢?相关的知识,希望对你有一定的参考价值。

rt

参考技术A   这默认值是根据model.OtherCharges来的,可以先给model.OtherCharges赋值再返回视图,或者用JS在加载事件里赋值。  方法如下:  第一个:在Controller 里生成一个新的实体类,填充默认值,然后Return 到视图里。  第二个:如果有virtual 关联,则可以使用foreach 打开 OrderDetail的值。   参考技术B http://blog.csdn.net/kiqinie/article/details/8486918
你可以看看,大概意思是用linq便利form 找到选中的checkbox 然后获得值。
参考技术C 序言 ExtJS是一种主要用于创建前端用户界面,是一个与后台技术无关的前端ajax框架。 功能丰富,无人能出其右 无论是界面之美,还是功能之强,ext的表格控件都高居榜首。 单选行,多选行,高亮显示选中的行,推拽改变列宽度,按列排序,这些基本功能咱们就不提了。 自动生成行号,支持checkbox全选,动态选择显示哪些列,支持本地以及远程分页,可以对单元格按照自己的想法进行渲染,这些也算可以想到的功能。 再加上可编辑grid,添加新行,删除一或多行,提示脏数据,推拽改变grid大小,grid之间推拽一或多行,甚至可以在tree和grid之间进行拖拽,啊,这些功能实在太神奇了。更令人惊叹的是,这些功能竟然都在ext表格控件里实现了。 呵呵~不过ext也不是万能的,与fins的ecside比较,ext不能锁定列(土豆说1.x里支持锁定列,但是2.0里没有了,因为影响效率。),也没有默认的统计功能,也不支持excel,pdf等导出数据。另外fins说,通过测试ecside的效率明显优于ext呢。:)[编辑本段]Ext发展史 1、第一只“出海”的YUI-Ext只是作者Jack打算对基于BSD协议的Yahoo!UI库进行自定义的扩展,但后来一度风头盖过其父辈YUI,足以说明 大家对它的热情,很多人把它投入项目人并不十分了解它。分析人士打了一比喻:就好比尚未谋面, 并不了解一个人的家庭、教育、品行等背景,只因为他有一副精致漂亮的外观,就对其陷入了疯狂的倾慕之中。因此分析人士建议,在投入项目前,要认真仔细地了 解EXT的内在原理和与其他Ajax库不同地方。 2、在2006年初 ,Jack Slocum(杰克斯·洛克姆 ) 就一套公用设施扩建为Yahoo! User Interface (YUI) 库而工作。这些扩展很快组织成一个独立的库代码并以” yui-ext” 的名义下发布。 3、在2006年秋天,Jack发行了版本为0.33的yui-ext,而最终被证明为最后版本的代码,根据这名字(下开放源代码DSB许可)。在年底之前,这个库已大受欢迎, 名字被简化为Ext,反映了它作为一个框架的成熟和独立。 该公司成立于2007年初,Ext现在为双执照,使用LGPL和一个商业执照。 4、在2007年4月1日,发布1.0正式版。 5、直至今日(2010年1月8日)ExtJS已发展涵盖美国、日本、中国、法国、德国等全球范围的用户,现在的版本为Ext-3.1.0 6、官方在2009年4月14-16日的首次Ext Conference中发布了Ext的3.0 RC版本。 7、2009年5月4日,Ext的3.0 版本发布。[编辑本段]什么是EXT 1、ExtJS可以用来开发RIA也即富客户端的AJAX应用,是一个用javascript写的,主要用于创建前端用户界面,是一个与后台技术无关的前端ajax框架。因此,可以把ExtJS用在.Net、Java、php等各种开发语言开发的应用中。ExtJs最开始基于YUI技术,由开发人员JackSlocum开发,通过参考JavaSwing等机制来组织可视化组件,无论从UI界面上CSS样式的应用,到数据解析上的异常处理,都可算是一款不可多得的JavaScript客户端技术的精品。 2、Ext的UI组件模型和开发理念脱胎、成型于Yahoo组件库YUI和Java平台上Swing两者,并为开发者屏蔽了大量跨浏览器方面的处理。相对来说,EXT要比开发者直接针对DOM、W3C对象模型开发UI组件轻松。[编辑本段]ExtJs UI Engine简介 ExtJs初期仅是对Yahoo! UI的对话框扩展,后来逐渐有了自己的特色,深受网友的喜爱。 发展至今, Ext除YUI外还支持Jquery、Prototype等的多种JS底层库,让大家自由地选择。该框架完全基于纯html/CSS+JS技术,提供丰富的跨浏览器UI组件,灵活采用JSON/XML数据源开发,使得服务端表示层的负荷真正减轻,从而达到客户端的MVC应用! ExtJs支持多平台下的主流浏览器 Internet Explorer 6+ FireFox 1.5+ (PC,

如何在php中获取多个选定(动态)复选框的值?

【中文标题】如何在php中获取多个选定(动态)复选框的值?【英文标题】:How to get values of multiple selected (dynamic) checkbox in php? 【发布时间】:2014-12-01 11:09:10 【问题描述】:

我是初学者。我在一张桌子上显示了 10 个学生的学生 ID 和学生姓名。针对每个学生 ID,应该有一个 checkbox(动态)。当我点击添加按钮时,所有选中的学生详细信息(id、姓名)都必须插入另一个databasetable。我该怎么办?

【问题讨论】:

到目前为止你做了什么? 【参考方案1】:
<form method="post" action="pageurl">
        <input type="checkbox" name="studentid[]" value="1,Student1" />Student1
        <input type="checkbox" name="studentid[]" value="2,Student2" />Student2
        <input type="checkbox" name="studentid[]" value="3,Student3" />Student3
        <input type="checkbox" name="studentid[]" value="4,Student4" />Student4

        <input type="submit" />
        </form>
        <?php

        $id=$_POST['studentid'];
        foreach($id as $student)
        
        $extract = explode(',',$student);
        $query="INSERT INTO student (id,name) values ('$extract[0]','$extract[1]')";
        

        ?>

【讨论】:

危险:你很容易受到SQL injection attacks的影响,你需要defend你自己。【参考方案2】:

使用复选框名称作为数组, 示例:

<form method="post" action="" id="frm_id">
        <input type="checkbox" name="chkid[]" value="10,Anu" />Anu
        <input type="checkbox" name="chkid[]" value="11,Raj" />Raj
        <input type="checkbox" name="chkid[]" value="12,Ram" />Ram
        <input type="checkbox" name="chkid[]" value="13,xxx" />xxx
        <input type="checkbox" name="chkid[]" value="14,yyy" />yyyy
        <input type="checkbox" name="chkid[]" value="15,zzz" />zzz
        <input type="checkbox" name="chkid[]" value="16,qqqq" />qqqq
        <input type="submit" value="Insert"  name="sub"/>
        </form>
        <?php
        if(isset($_POST['sub']))
        
        $id=$_POST['chkid'];
        for($i=0;$i<count($id);$i++)
        
        $exp=explode(',',$id[$i]);//Explode id and name
        echo 'id='.$exp[0].',Name='.$exp[1];echo "<br>";
        echo $query="INSERT INTO tbl_student (id,name) values ('$exp[0]','$exp[1]')";echo "<br><br>";
        
        
        ?>

【讨论】:

我认为我对复选框 。错了吗? 危险:你很容易受到SQL injection attacks的影响,你需要defend你自己。 @MIA 使用 php 标签,【参考方案3】:

尝试使用这样的复选框元素数组:

<input type="checkbox" name="months[]" value="feb">February<br>
<input type="checkbox" name="months[]" value="mar">March<br>
<input type="checkbox" name="months[]" value="apr">April<br>

【讨论】:

以上是关于我在MVC中动态生成了多个CheckBox,然后我怎么能在Controllers上获取被选中的CheckBox的值呢?的主要内容,如果未能解决你的问题,请参考以下文章

在ext中如何动态设置checkbox的checked属性!

基于复选框选择的多个动态单选按钮

在刷新页面 MVC 上丢失的 JavaScript 中动态创建的内容

动态创建的表单将 null 提交给控制器 (MVC)

如何使用jQuery unobtrusive和Asp.Net Mvc验证动态生成的单选按钮组?

如何使用 jquery unobtrusive 和 Asp.Net Mvc 验证动态生成的单选按钮组?