精华内容
下载资源
问答
  • Django中checkbox复选框传值问题
    千次阅读
    2018-08-03 16:38:19

    Django 中,html 页面通过 form 标签来传递表单数据。
    对于复选框信息,即 checkbox 类型,点击 submit 后,数据将提交至 view 中的函数。

    我们通过request.POST.get() 函数来获取来自 html 页面的值,但是该函数只能 get 到选中的最后一个值。
    因此想要传递选中的多个值,需要用 request.POST.getlist() 函数
    该函数返回一个列表,可通过迭代来获取列表中每一项的值。

    更多相关内容
  • Django 中,html 页面通过 form 标签来传递表单数据。...补充知识:解决checkbox复选框选中传值,不选中不传值的方案 解决checkbox复选框选中传值,不选中不传值的方案 问题描述: 一个form表单中的结
  • 2、当下面的复选框全部选中时,则将第一个复选框设置为选中,当下面的复选框中有一个没有被选中时,则第一个复选框取消选中; 3、将下面的复选框的id值传递给Controller层,组成id数组,然后调用相应的方法(一般都...
  • 复选框在网页中很是常见,无论是电商网站,还是平台,只有有需要选择的地方就会见到复选的身影。接下来,是我之前写过的两个小demo,都是关于复选框的,希望会给大家带来帮助。 第一个是关于复选框全选反选的操作,...
  • 解决checkbox复选框选中传值,不选中不传值的方案   问题描述: 一个form表单中的结构是这样的: 则页面显示结果是: 如上填写数据,经过序列化后的数据是: [ {"id":"1","...

    解决checkbox复选框选中传值,不选中不传值的方案

     

    问题描述:

    一个form表单中的结构是这样的:

    则页面显示结果是:

    如上填写数据,经过序列化后的数据是:

    [

    {"id":"1","infoType":"11","infoName":"名称1","fileIsOpen":"o"},

    {"id":"2","infoType":"12","infoName":"名称2","fileIsOpen":"n"}

    ]

    从数据中明显看书fileIsOpen字段的checkbox复选框选中则传值是"o",未被选中则传值是"n",其中这是错误的数据,因为被选中传的值是on,也就是说checkbox复选框选中传值,不选中不传值。那么怎么解决不选中也传值的问题呢?

     

    解决方案:

    我们可以设置隐藏域来代替checkbox复选框传递数据,具体的页面修改如下:

    checkbox复选框对应的点击事件:

    再次输入相同的数据传递的数据是:

    [

    {"id":"1","infoType":"11","infoName":"名称1","fileIsOpen":"0"},

    {"id":"2","infoType":"22","infoName":"名称2","fileIsOpen":"1"}

    ]

    从数据可以这次传递的数据是正确的

     

    上述方案存在的问题

    如果页面什么不传递,

    则传递的数据是这样的:

    [

    {"fileIsOpen":"0"},

    {"fileIsOpen":"0"}

    ]

    因此后台在接受到数据后需要判断List集合中的对象的必选要素,如果不包含必传要素,就算传入上述数据也是不录入数据库的数据,则可以舍去这些数据。

     

    参考文章:

    https://blog.csdn.net/zr15829039341/article/details/78998176

    https://blog.csdn.net/wangrongfei136/article/details/50211261

    https://blog.csdn.net/xyanghomepage/article/details/37562179

     

     

    展开全文
  • PHP(2)复选框表单传值 复选框:通常是将一类内容以同样(同名)的形式传递给后台,数据库储存通常是一个字符储存。选中才会提交,不选不会提交。 <!DOCTYPE html> <html> <head> <title&...

    PHP(2)复选框表单传值

    复选框:通常是将一类内容以同样(同名)的形式传递给后台,数据库储存通常是一个字符储存。选中才会提交,不选不会提交。

    <!DOCTYPE html>
    <html>
    	<head>
        	<title>"测试"</title>
        	<meta charset="utf-8">
        </head>
    	<body>
    		<form method="post" action="./index.php?">
            	<input type="checkbox" name="hobby" value="basketball"/>basketball
            	<input type="checkbox" name="hobby" value="football"/>football
            	<input type="checkbox" name="hobby" value="pingpang"/>pingpang
                <input type="submit" value="提交"/>
            </form>
            
    	</body>
    </html>
    
    <?php
    	//接收数据
    	echo'<pre>';
    	var_dump($_GET);//get方式提交的数据
    	echo'<hr>';
    	var_dump($_POST);//post方式提交的数据
    	echo'<hr>';
    	var_dump($_REQUEST);
    ?>
    


    在这里插入图片描述
    我们选中了两个,后台却只提交了一个,是因为键值对中的关键值具有唯一性,两个选项的name属性相同,后面的会将前面的覆盖。


    复选框的命名方式

    1.在浏览器端,checkbox的name属性的值不论什么都会被浏览器毫无保留的提交
    2.在PHP中$_POST、$_GET都会对同名的name属性进行覆盖。
    解决方案
    浏览器不认为[](浏览器不认为有特殊性),但是PHP认为[]有特殊性,系统自动认为该符号时数组的形式,所以PHP就会自动的将同名的但是带有[]的元素组合到一起形成一个数组。

    <!DOCTYPE html>
    <html>
    	<head>
        	<title>"测试"</title>
        	<meta charset="utf-8">
        </head>
    	<body>
    		<form method="post" action="./index.php?">
            	<input type="checkbox" name="hobby[]" value="basketball"/>basketball
            	<input type="checkbox" name="hobby[]" value="football"/>football
            	<input type="checkbox" name="hobby[]" value="pingpang"/>pingpang
                <input type="submit" value="sub"/>
            </form>
    	</body>
    </html>
    
    <?php
    	//接收checkbox数据
    	header('Content-type:text/html;charset=utf-8');//告诉浏览器当前服务器返回的内容是text/html,同时需要浏览器用utf-8字符集解析
    	echo'<hr>';
    	var_dump($_POST);
    ?>
    

    在这里插入图片描述

    PHP处理复选框数据

    1、单选按钮的数据处理
    Radio button:可以出现多个选项,但是只能选择其中一个
    (1)表单中使用name属性,使用同名即可;只能选中一个。
    (2)后台接收数据也不需要额外处理。
    (3)数据库储存的话只需要一个字段储存普通数据即可(数字或者字符串)
    在这里插入图片描述
    在这里插入图片描述
    (4)PHP拿到数据之后组织SQL直接储存到数据表即可。
    2.多选框的数据处理
    · (1)表单中name属性使用数组格式,名字[](一类复选框数据使用一个)。
    (2)后台接收到数据之后,是一个数组(数组不能储存到数据库)。
    (3)PHP需要将数组转换成指定格式的字符串;使用分隔符分隔每一个元素并且形成字符串。
    implode(数组,‘分隔符’),将数组转化为字符串,元素之间分隔符分隔。
    (4)PHP组织SQL直接存储到数据库。

    <?php
    	//将复选框内容储存到数据库
    	
    	//表示设计
    	/*
    		id	name	gender	hobby
    		1	mark 	男		篮球,足球,乒乓球		
    	*/
    	header('Content-type:text/html;charset=utf-8');
    	$hobby=implode($_POST['hobby'],',');
    	print_r($hobby);
    ?>
    

    在这里插入图片描述
    (5)如果是取出操作,那么取出数据之后使用explode字符串变成数组。
    (6)在HTML显示中,通过判断复选框元素是否在数组中存在,来确定复选框checkbox是否有checked=“checkbox”属性;in_array()函数判断一个元素是否存在在一个数组中。
    3、其他常规同名表单项的数据处理
    (1)除开radio button 单选框和checkbox复选框,很少会出现同名的表单项。如果非要使用同名的来进行管理,那么可以采用checkbox方式进行操作。

    复选框细节

    如果复选框没有选中,那么浏览器就不会提交,这样会引起错误,因此在PHP接收使用数据的时候,应该先判断是否存在该数据。
    在这里插入图片描述
    可以使用isset()函数判断不为空。

    <?php
    	//将复选框内容储存到数据库
    	
    	//表示设计
    	/*
    		id	name	gender	hobby
    		1	mark 	男		篮球,足球,乒乓球		
    	*/
    	header('Content-type:text/html;charset=utf-8');
    	$hobby=isset($_POST['hobby'])?$_POST['hobby']:array();
    	$hobby_string=implode($hobby,',');
    	echo $hobby_string;
    ?>
    
    展开全文
  • 我有一个表单将值传递给...HTML复选框传递所有选定的内容值HTML:Order IdChannelDispatch By DateAmountStatusProducts{% for oid,oiid,dbd,stts,tp,sku,qty,chnl in new_orders %}{{oid}}{{oiid}}{{chnl}}{{db...

    我有一个表单将值传递给django视图。

    在表格中有一个带有复选框的动态生成表格。HTML复选框传递所有选定的内容值

    HTML:

    Order IdChannelDispatch By DateAmountStatusProducts

    {% for oid,oiid,dbd,stts,tp,sku,qty,chnl in new_orders %}

    {{oiid}}
    {{chnl}}    {{dbd}}{{tp}}{{stts}}
    {{sku}}
    Quantity: {{qty}}

    {% endfor %}

    我传递的3个值回我的看法。 oid, oiid, chnl。 问题是,如果我选择了一些元素而不是全部,那么所有oid的值都会传递给那些元素,但是oiid和chnl的值都会被传递。

    我的javascript:

    function toggle(source, text) {

    checkboxes = document.getElementsByName(text);

    for(var i=0, n=checkboxes.length;i

    checkboxes[i].checked = source.checked;

    }

    }

    如何通过只有被选择的全部三个变量的值?

    +0

    所以...我的回答对你有帮助吗? –

    展开全文
  • 选框checkbox传值给后台用string,和string[]接收效果不同当后台用String[]接的时候,会类似list分列当后台用Stirng接的时候就是混在一起的字符串交易品种 ${item.LOOKUP_NAME}品种 checked="checked" />...
  • 提示:该文章记录前端往后端传值的一些细节 提示:以下是本篇文章正文内容,下面案例可供参考 一、form是什么? form是前端往后端传值的一个表单 二、html代码如下 1,下拉列表源码 <!DOCTYPE html> &...
  • function getArea(id,p){//初始化ajaxvar xhr = new XMLHttpRequest();var url = "";var sel=document.getElementById("sheng");//打开请求xhr.open("get",url,true);//发送数据xhr.send(null);...
  • html代码:应用一组{% for peopel_1 in peopels_1 %}{{ peopel_1.name }}{% endfor %}应用二组{% for peopel_2 in peopels_2 %}{{ peopel_2.name }}{% endfor %}提交js代码:1 获取已选中的名字并放到数组中var name...
  • //拼接复选框的选中或非选中值 self.choiseBox = function($event,itemcode) { //验证是取消还是添加 if($event.target.checked){ //选中,那就去追加 $scope.formData.push({ itemcode:itemcode }); }else{ ...
  • checkbox复选框的post传值

    万次阅读 2015-08-07 10:54:15
    php获取 checkbox复选框值的方法            复选一          复选二        复选三        复选四              if( $_POST )  {  $value = $_POST['...
  • 前端页面设置代码: <td> <!--多选框--> <input type="checkbox" name=...在后端对于复选框的参数及内容处理,获得复选框中选中内容办法: /* 车位信息批量管理 修改销售状态 */ @RequestMapp
  • //复选框事件中给全局变量传值 onCheck: function (event, treeId, treeNode) { console.log(treeNode.id) //判断点击的是不是最下级节点,如果是则赋值 if (treeNode.children == undefined) { //判断是选中复选...
  • checkbox:true时,页面上的list列表就有复选框了。 这里获取复选框后,如何得到勾选记录的id呢? 上述使用的json 中有一个属性是:  idField:"sysno", 在勾选记录时,就绑定了对应记录的id。 这里需要在...
  • 一、Thymeleaf+layui+jquery复选框回显基于Thymeleaf模板下的layui+jquery复选框回显,主要是jquery。大致意思是:把数组转成JSON传到前台,再在前台转回数组AJAX一般都是用JSON格式或XML格式来传递数据的JSON就是一...
  • 我需要一些帮助,通过使用ajax将复选框值传递到数组中并检索控制器中的值。以下代码不起作用。我收到错误:“为foreach()提供的无效参数”。 Var_dump给出string(42) "Educator_Classes[]=1&Educator_Classes;[]...
  • 摘抄 js 复选框传值

    2010-05-07 14:01:41
    我要用js传递选中的值,但传不过去。 aaaa 我选了,但老是aa.htm?id=undefined 怎么会事? 但要是是这样就可以 aaaa 但不管你选没选中,都会aa.... 多个复选框不能...
  • 管理界面的配置用户角色的地方需要用到复选框,因为是多对多,这里用js去完成修改后赋值到初始字段中,使后端可以轻易的读取, 前端用户管理界面 点击编辑按钮,弹出对应的用户信息,这里是之前写的如何给子页面...
  • 实战用例:管理后台–权限管理模块,多级菜单,菜单层级不固定 数据渲染用组件递归 使用组件递归之后不能使用父子传值,不是普通的父子关系 新建一个bus.js文件 import Vue from 'vue' export var bus = new Vue() ...
  • 我想通过jQuery的.ajax()在我的网站上提交一个POST表单,该表单包含一个textarea字段和一个输入字段(类型为“checkbox”,其中复选框的数量为任意/可变)。PHP接收到textarea数据,并且ajax响应已正确显示给用户。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,160
精华内容 1,264
关键字:

复选框html传值