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

【Django】bootstrapselect使用方法

bootstrap-select使用方法一、引入所需文件1.引入本地文件2.引入网络文件二、使用方法1.基本使用方法2.Django中进行取值(添加功能例子ÿ


bootstrap-select 使用方法

  • 一、引入所需文件
    • 1.引入本地文件
    • 2.引入网络文件
  • 二、使用方法
    • 1.基本使用方法
    • 2.Django中进行取值(添加功能例子)
    • 2.Django中进行赋值(修改功能例子)


一、引入所需文件


1.引入本地文件

第一种方式是将所需文件下载到本地,再进行引用。
文件下载:bootstrap-select

Bootstrap 的所有 Javascript 插件都依赖 jQuery,所以必须放在前边。然后再引入插件的文件。

<link rel&#61;"stylesheet" href&#61;"/static/css/bootstrap.min.css"><link rel&#61;"stylesheet" href&#61;"/static/css/bootstrap-select.min.css"><script src&#61;"/static/js/jquery-3.1.1.min.js">script><script src&#61;"/static/js/bootstrap.min.js">script><script src&#61;"/static/js/bootstrap-select.min.js">script>

2.引入网络文件

<link href&#61;"https://cdn.jsdelivr.net/npm/bootstrap&#64;3.3.7/dist/css/bootstrap.min.css" rel&#61;"stylesheet"><link href&#61;"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.4/css/bootstrap-select.min.css" rel&#61;"stylesheet"><script src&#61;"https://cdn.jsdelivr.net/npm/jquery&#64;1.12.4/dist/jquery.min.js">script><script src&#61;"https://cdn.jsdelivr.net/npm/bootstrap&#64;3.3.7/dist/js/bootstrap.min.js">script><script src&#61;"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.4/js/bootstrap-select.min.js">script>

不建议使用低版本比如1.0&#xff0c;js取值赋值等写法会有所不同。


二、使用方法


1.基本使用方法

样式仅需class&#61;"selectpicker"即可&#xff0c;form-control是后添加的。
multiple是多选&#xff0c;没有的话就是单选。
title&#61;&#39;请输入参数&#39;是未选择时显示的文字。
data-live-search &#61;“true”点开列表会有一个搜索框&#xff0c;可以查找选项内容。

<select name&#61;"pparameter" class&#61;"form-control selectpicker" title&#61;&#39;请输入相关工艺参数&#39; data-live-search &#61;“true” multiple><option value&#61;"参数1">参数1option><option value&#61;"参数2">参数2option><option value&#61;"参数3">参数3option><option value&#61;"参数4">参数4option>
select>

在这里插入图片描述
其他用法可以参考Bootstrap-select中文网的例子


2.Django中进行取值&#xff08;添加功能例子&#xff09;

若选项数据量大&#xff0c;需要动态修改&#xff0c;建议创建单独的数据库表进行存储。


  1. 定义表结构 (models.py)

from django.db import models# Create your models here.
class Pparameter(models.Model): # 相关工艺参数name &#61; models.CharField(max_length&#61;100)def __str__(self):return self.name

  1. 路由配置 (urls.py)

urlpatterns &#61; [...path(&#39;add&#39;, views.add, name&#61;&#39;add&#39;),...
]

  1. 视图层 实现功能 (views.py)

from django.shortcuts import render
from .models import Poem,Pparameterdef add(request):pparameters &#61; Pparameter.objects.all()return render(request, &#39;add.html&#39;, {&#39;pparameters&#39;: pparameters})

  1. 前台模版 (add.html)

<form action&#61;"{% url &#39;svc_add&#39; %}" method&#61;"post">...<select name&#61;"pparameter" class&#61;"form-control selectpicker" title&#61;&#39;请输入相关工艺参数&#39; data-live-search &#61;“true” multiple>{% for i in pparameters %}<option value&#61;"{{ i.name }}">{{ i.name }}option>{% endfor %}select>...
form>

后台获取(views.py)

from django.shortcuts import render
from .models import Poem,Pparameter
from django.http import HttpResponseRedirect
from django.urls import reverse...
def svc_add(request):# 获得form提交的数据 通过POST# 获取复选框的值,是一个选中的数组pparameter &#61; request.POST.getlist(&#39;pparameter&#39;)# 将数组转化为字符串pparameter &#61; &#39;,&#39;.join(pparameter)...

2.Django中进行赋值&#xff08;修改功能例子&#xff09;


  1. 路由配置 (urls.py)

urlpatterns &#61; [...path(&#39;add&#39;, views.add, name&#61;&#39;add&#39;),...
]

  1. 视图层 实现功能 (views.py)

from django.shortcuts import render
from .models import Poem,Pparameterdef edit(request, id):# 获得要修改的数据poem &#61; Poem.objects.get(pk&#61;id)# 获得相关工艺参数pparameters &#61; Pparameter.objects.all()# 渲染修改页面return render(request, &#39;edit.html&#39;, {&#39;poem&#39;: poem, &#39;pparameters&#39;: pparameters})

  1. 前台赋值 (edit.html)
    $(&#39;#ppselect&#39;).selectpicker(&#39;val&#39;, 数组类型的值).trigger("change");数据库存入的是字符串类型&#xff0c;将字符串转化为数组&#xff0c;再赋值给select组件。

<form action&#61;"{% url &#39;svc_edit&#39; poem.id %}" method&#61;"post">...相关工艺参数&#xff1a;<select id&#61;"ppselect" name&#61;"pparameter" class&#61;"form-control selectpicker" title&#61;&#39;请输入相关工艺参数&#39;data-live-search&#61;“true” multiple>{% for i in pparameters %}<option value&#61;"{{ i.name }}">{{ i.name }}option>{% endfor %}select>...
form>
<script>$(function () {var pp &#61; &#39;{{poem.pparameter}}&#39;;$(&#39;#ppselect&#39;).selectpicker(&#39;val&#39;, pp.split(&#39;,&#39;)).trigger("change");})
script>

后台获取部分与添加相似&#xff0c;使用getlist()进行获取即可。


推荐阅读
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • 本文介绍了网页播放视频的三种实现方式,分别是使用html5的video标签、使用flash来播放以及使用object标签。其中,推荐使用html5的video标签来简单播放视频,但有些老的浏览器不支持html5。另外,还可以使用flash来播放视频,需要使用object标签。 ... [详细]
  • 本文讨论了使用bootstrapselect插件设置container后,选择完选项后options不隐藏的问题,给出了解决方法,并提供了相应的jsfiddle链接进行演示。 ... [详细]
  • 本文介绍了Hive常用命令及其用途,包括列出数据表、显示表字段信息、进入数据库、执行select操作、导出数据到csv文件等。同时还涉及了在AndroidManifest.xml中获取meta-data的value值的方法。 ... [详细]
  • 1.脚本功能1)自动替换jar包中的配置文件。2)自动备份老版本的Jar包3)自动判断是初次启动还是更新服务2.脚本准备进入ho ... [详细]
  • python3 logging
    python3logginghttps:docs.python.org3.5librarylogging.html,先3.5是因为我当前的python版本是3.5之所 ... [详细]
  • 寻求更强大的身份和访问管理(IAM)平台的企业正在转向云,并接受身份即服务(IDaaS)的灵活性。要为IAM选择正确的场外解决方案,业务管理人员和IT专业人员必须在实施之前评估安全 ... [详细]
  • 本文摘要配置目的:寄存器配置用于更改路由器启动过程。配置目的:寄存器配置用于更改路由器启动过程。启动位由4位16进制寄存器组成格式:0xA ... [详细]
  • 视图分区_组复制常规操作网络分区amp;混合使用IPV6与IPV4 | 全方位认识 MySQL 8.0 Group Replication...
    网络分区对于常规事务而言,每当组内有事务数据需要被复制时,组内的成员需要达成共识(要么都提交,要么都回滚)。对于组成员资格的变更也和保持组 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 1、DashAPI文档Dash是一个API文档浏览器,使用户可以使用离线功能即时搜索无数API。程序员使用Dash可访问iOS,MacOS, ... [详细]
author-avatar
手机用户2502858405
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有