注意坑: 1.pjax必须包含使用到的所有js,也就是在页面中被应用到的pjax,都要被包含,否则js会在第一次执行pjax后失效 试图层 use yii\widgets\Pjax; 可以不显示刷新效果 案例: Pjax是JQuery的插件,结合ajax和Html5的pushState技术来实现异步刷新,每次通过a标签点击和form表单提交向服务器发送一个指定的请求之后,服务器都会返回需要更新的内容...如果Pjax没有响应,超时之后页面将会重新加载。 Yii2 Pjax Examples Refresh 本例是一个简单的点击超链接来实现刷新时间,通过Pjax widget实现异步刷新。...> 控制器中提交代码 public function actionSubmit() { $security = new Security(); $name = Yii::$app->request...2.没有拦截页面的默认事件, 例如点击 或 时, 执行 pjax 的同时,浏览器跳转了。
在网上搜了很多yii2图片上传插件,感觉这个和bootstrap融合的很好,比较能满足需求,故推荐给大家。 在使用过程中踩过不少坑,以下是具体使用说明。...开始前准备过程 $ php composer.phar require kartik-v/yii2-widget-fileinput "@dev" or 在 composer.json 增加 "kartik-v.../yii2-widget-fileinput": "@dev" 具体参考 https://github.com/kartik-v/yii2-widget-fileinput 配置图片上传路径 在 common...$imageId = Yii::$app->db->getLastInsertID(); } } //图片上传后返回值...,三个参数,主要是第二个,有formData,jqXHR以及response参数,上传成功后返回的ajax数据可以在response获取 'pluginEvents
6.提交按钮 提交按钮是表单中的核心控件,用户完成信息的输入后一般都需要单击提交按钮才能完成表单数据的提交。...10.文件域 当定义文件域时,页面中将出现一个“选择文件”按钮和提示信息文本,用户可以通过单击按钮然后直接选择文件的方式,将文件提交给后台服务器。...如果所输入的内容是URL地址格式的文本,则会提交数据到服务器;如果输入的值不符合URL地址格式,则不允许提交,并且会有提示信息。...其基本形式是# RRGGBB,默认值为#000000,通过value属性值可以更改默认颜色。单击clor类型文本框,可以快速打开拾色器面板,方便用户可视化选取一种颜色。...HML中提供了多个可供选取日期和时间的输入类型,用于验证输入的日期、具体。
, 'value' => 'Larry', 'expire'=>time()+3600 ])); 创建名为"name"的cookie,赋值为"Larry",并且规定该cookie一小时后失效...expire这是一个UNIX时间戳,如果设置为0,或省略,该Cookie将在浏览器关闭时消失 获取Cookie PHP $name=$_COOKIE["user"] Yii2 $cookies = Yii...has('user')){ } if (isset($cookies['user'])){ } 删除Cookie PHP setcookie("user", "", time()-3600);//把失效日期设置为过去...C.Cookie的key区分大小写 Yii::$app->request->cookies 和 Yii::$app->response->cookies在yii里面是分开的,前者是客户端(浏览器cookie...),后者是服务器端。
最近在使用yii2开发一个表单页面的时候,有多图上传的需求,稍微找了找这方面的组件,基本都安利fileInput这个组件,于是就尝试着使用这个库来完成后端表单页面的多图上传功能。...我们来看官方文档展示的几个常规操作: use kartik\widgets\FileInput // or 'use kartikile\FileInput' if you have only installed...> 我们在控制器配置好图片浏览的配置,传入进来。...代码里的关键点我已经加上了配置,我们可以看到,这时异步上传的url已经配置到了upload/image这个控制器里,而我们也在删除,上传等操作完成时加上了js的回调。...上传成功后你可以刷新当前页面,因为一开始我们就在controller中实现了图片的预览工作,所以理应会展示我们已经上传的两张图片。
属性: 注:括号内的是属性的值,以后同 autoplay(autoplay):如果出现该属性,则视频在就绪后马上播放。...在提交表单时,会自动验证 email 域的值。 Input 类型 - url url 类型用于应该包含 URL 地址的输入域。 在提交表单时,会自动验证 url 域的值。...3",则合法的数是 -3,0,3,6 等) value:(number): 规定默认值 Input 类型 - Date Pickers(日期选择器) HTML5 拥有多个可供选取日期和时间的新输入类型...: date - 选取日、月、年 month - 选取月、年 week - 选取周和年 time - 选取时间(小时和分钟) datetime - 选取时间、日、月、年(UTC 时间) datetime-local...- 选取时间、日、月、年(本地时间) Input 类型 - search search 类型用于搜索域,比如站点搜索或 Google 搜索。
,在开发阶段可以通过配置来避免这个问题,尤其是开发移动端页面的时候特别有用。...yii2生命周期内持续的观察某些变量的值及赋值路径,具体配置可以参考我之前的课程, 用xdebug支持yii2调试之 - PhpStorm配置篇 当然,yii2自己的debug扩展也极其有用,尤其配置urlManager...开发中 本段为你介绍我在yii2开发中一些习惯和小技巧,希望对你有用。...另外在做迁移脚本的时候,如果你的表有前缀,那么在脚本里的写法如下 {{%user}}// discuz_user 时间问题 使用yii2开发mysql类web应用的时候,数据表的时间类字段我们喜欢用时间戳...); defined('YII_ENV') or define('YII_ENV', 'prod'); 报错页面 对于一个稳定的程序,报错不要紧,要紧的是报错后的处理,既然用户觉得有好又对开发人员有帮助
丢钱后的老王一直在思考,钱是怎么丢的、为何丢钱、为何是我丢钱~~ 后来老王出现了严重的心理问题,他决定报复社会。...4、就在第三步操作的2分钟内,老王成功让老刘(liuxiaoer)再一次访问了自己做的网页,你知道的,此刻老刘(liuxiaoer)在银行的session还没有过期,老王网页给银行服务器发送请求后,验证通过...在CSRF这块,yii2框架采取了HTTP头部和参数token并行的方式,针对于每个请求,在beforeAction都会做一次判断,如下 // vendor/yiisoft/yii2/web/Controller.php...最后我在把上图的关键函数进行说明 generateCsrfToken() 该函数生成token并存到cookie或session中,该值不会随页面刷新而变化,它更多充当钥匙的作用,根绝它生成具体的csrfToken...getCsrfToken() 生成具体的csrfToken,就是你在表单隐藏域中看到的那个值,这个值将来会传到服务器和真实的csrfToken进行对比,验证是否合法。
好了好了,抓紧时间安装,不然聊起来真是没完没了。...composer require kartik-v/yii2-widget-select2 "@dev" 特别说明,因为这里安装的dev版本,也就是开发版本,不稳定版本,如果你的项目是git托管的,composer...安装下来之后这里记得删掉 vendorkartik-vyii2-widget-select2目录下的.git文件,不然你提交不上去的哦 等他个大概5分钟的样子差不多了,安装就好了,然后我们就可以像下面一样开始使用了...data是键值对数组哦,key-value ,下面所声明的所有$data均为键值对数组,以该数组为例 $data = [2 => 'widget', 3 => 'dropDownList', 4 => 'yii2...classname(), [ 'options' => ['placeholder' => '请输入标题名称 ...'], 'pluginOptions' => /【一个开发人员,能懂服务器量好,反之一个服务器维护人员
且你的内容不会进行提交;url地址要完整并正确,才能把数据提交过去;手机端识别后缀为.com ,在pc端识别.cn .com .top search 用于搜索域 email 对输入框进行一个验证.输入框里面输入错误...最大值max range 用于包含一定范围内数字值的输入域,默认开始值value,step步长值 color 用于选取颜色 1.2.4 input日期表单元素 type 说明 date 获取日期 年.../月 /日 , yyyy:年 mm:月 dd:日 datatime 手动输入一个日期和时间 time 用于选择一个时间 低版本的浏览器不兼容 week 用于选择周和年 低版本的浏览器不兼容...datetime-local 用于选择日期和时间 month 用于选择一个年份+月份 效果如下: div::before表示在div前添加元素 div::after表示在div后添加元素 都属于行内元素,权重是1 2.2.4 盒子模型 box-sizing
PS:如果希望只在表单提交时验证,可以设置为空。...,Ajax 验证完成后的行为(Function)[Demo] onBeforeAjaxFormValidation $.noop 表单提交验证规则通过后,Ajax 验证之前的行为(Function)[Demo...dateRange[name] validate[dateRange[grp1]] 验证日期范围 dateTimeRange[name] validate[dateTimeRange[grp1]] 验证日期及时间范围...[past[2012/12/20]] 日期必需在 date 或 date 的未来。.../M/D、YYYY-MM-DD、YYYY-M-D dateTimeFormat validate[custom[dateTimeFormat]] 验证日期及时间格式,格式为:YYYY/MM/DD hh:
-043 资产维修登记 维修费用(元)小于0(最多保留小数点儿后两位),进行登记 资产管理员正确打开“资产维修登记”窗口 维修费用(元):-1 其他输入正确 输入以上数据,点击【提交】按钮 提示维修费用...,系统自动生成资产维修单号(生成规则:“WX”+时间戳);同时返回至列表页,资产的状态不变 高 通过 ZCGL-ST-SRS014-046 资产维修登记 维修费用(元)大于99999.99(最多保留小数点儿后两位...保存当前登记信息,系统自动生成资产维修单号(生成规则:“WX”+时间戳);同时返回至列表页,资产的状态不变 高 通过 ZCGL-ST-SRS014-048 资产维修登记 维修费用(元)保留小数点儿后超过两位...-069 资产维修查询 按报修结束日期在报修开始日期之前进行查询 资产管理员正确打开资产维修管理页面 报修结束日期:报修开始日期之前 输入以上数据,点击【查询】按钮 保留查询条件,显示没有数据 高 未通过...报废结束日期:今天 输入以上数据,点击【查询】按钮 保留查询条件,显示符合条件的资产报废记录 高 通过 ZCGL-ST-SRS015-050 资产报废查询 按报废结束日期在报废开始日期之前进行查询 资产管理员正确打开资产报废管理页面
autoload": { "psr-4": { "abei2017\\emoji\\": "src" } } 具体psr-4的规范可以去官网看一下,composer安装了你的扩展后,...和 emojione/emojione 的正确部署,见require 自动加载采用psr-4,命名空间和扩展的src下文件一一映射 提交到github 然后在github上建立一个空的仓库,记住仓库git...然后我们在github上为它建立了一个版本,叫做1.0 提交给Packagist 大家都知道,Packagist(https://packagist.org/)是composer的扩展包列表站,这也是最后一步...国内镜像用户要慢些,镜像要每隔一点时间采集一次Packagist上的包。...升级你的包 过了一段时间,你的包有了新版本,可能在github上新建了2.0版本,这儿时候回到你在 Packagist 上的此包页面,点击下update即可,当然你也可以通过GitHub Service
PS:如果希望只在表单提交时验证,可以设置为空。...,Ajax 验证完成后的行为(Function)[Demo] onBeforeAjaxFormValidation $.noop 表单提交验证规则通过后,Ajax 验证之前的行为(Function)[Demo...dateRange[name] validate[dateRange[grp1]] 验证日期范围 dateTimeRange[name] validate[dateTimeRange[grp1]] 验证日期及时间范围...[past[2012/12/20]] 日期必需在 date 或 date 的未来。.../M/D、YYYY-MM-DD、YYYY-M-D dateTimeFormat validate[custom[dateTimeFormat]] 验证日期及时间格式,格式为:YYYY/MM/DD hh:
,而且机器可读的时间戳是属性datetime的值第二个可选的是pubtime用于表示出版日期值 重新定义的HTML标签 代表内联文本,通常是粗体,没有传递表示重要的意思 代表内联文本..." 显示完整日期 含时区 type="datetime-local" 显示完整日期 不含时区 type="time" 限制用户输入必须为时间类型 type="month" 限制用户输入必须为月类型 type...具有搜索意义的表单results="n"属性 type="color" 生成一个颜色选择表单 type="tel" 显示电话号码 **HTML5 拥有多个可供选取日期和时间的新输入类型...: date 选取日、月、年 month 选取月、年 week 选取周和年 time 选取时间(小时和分钟) 以下两个没有作用 datetime 选取时间、日、月、年(UTC 时间) datetime-local...: 正则表达式 输入的内容必须匹配到指定正则范围 autocomplete:是否保存用户输入值 默认为on,关闭提示选择off formaction: 在submit里定义提交地址 datalist
旧的解决办法 在控制器的 behaviors 方法中增加下面的代码: public function behaviors() { $behaviors = parent::behaviors(...Access-Control-Request-Method 用于通知服务器在真正的请求中会采用哪种 HTTP 方法。...Access-Control-Request-Headers 用于通知服务器在真正的请求中会采用哪些请求头。...Access-Control-Allow-Credentials 表示是否可以将对请求的响应暴露给页面。返回 true 则可以,其他值均不可以。...secure: false, // 接受在 HTTPS 上运行带有无效证书的后端服务器。
:今天之前 借用原因:199字 输入以上数据,点击【提交】按钮 保存当前登记信息,系统自动生成资产借用单号(生成规则:“JY”+时间戳);同时返回至列表页,在列表页新增一条记录,状态为“未归还”,操作栏显示...“资产借用登记”窗口 借用日期:今天 其他输入正确 输入以上数据,点击【提交】按钮 保存当前登记信息,系统自动生成资产借用单号(生成规则:“JY”+时间戳);同时返回至列表页,在列表页新增一条记录,状态为...:今天之前 备注:199字 输入以上数据,点击【提交】按钮 保存当前登记信息,系统自动生成资产借用单号(生成规则:“JY”+时间戳);同时返回至列表页,在列表页新增一条记录,状态为“未归还”,操作栏显示...输入以上数据,点击【提交】按钮 1、保存当前登记信息,系统自动生成关于新使用人的资产转移单(生成规则:“ZY”+时间戳),返回至资产转移列表页; 2、在资产借还列表,系统自动将原使用人的借用单状态“未归还...(生成规则:“ZY”+时间戳),返回至资产转移列表页; 2、在资产借还列表,系统自动将原使用人的借用单状态“未归还”置为“已归还”,归还日期取转移日期,备注为“资产转移:新使用人姓名(工号)”; 3、在资产借还列表
下拉列表是网页中一种最节省页面空间的选择方式,只有单击下拉按钮后才能看到全部的选项。例如很多网站的选择地区一栏,用到的就是下拉列表。...multiple:属性值为true时,可选择多个选项。 name:下拉列表的名称。 required:规定用户在提交表单前必须选择一个下拉列表中的选项。...2 说明 HTML5定义了几个与日期有关的新控件。支持日期控件的浏览器会提供一个方便的下拉式日历,供用户选择。...HTML5 拥有多个可供选取日期和时间的新输入类型: date:选取日、月、年; month:选取月、年; week:选取周和年; time:选取时间(小时和分钟); datetime:选取时间、日、月...-- 日期时间控件 - datetime-local --> 日期时间
注意:并不是所有的主流浏览器都支持新的input类型,不过您已经可以在所有主流的浏览器中使用它们了。即使不被支持,仍然可以显示为常规的文本域。...在提交表单时,会自动验证 email 域的值。 tel 输入电话号码。 color 点击时弹出颜色选择器,可以选择任意颜色。 url url 类型用于应该包含 URL 地址的输入域。...在提交表单时,会自动验证 url 域的值。 number number 类型用于应该包含数值的输入域。...Date HTML5 拥有多个可供选取日期和时间的新输入类型: date - 选取日、月、年 month - 选取月、年 week - 选取周和年 time - 选取时间(小时和分钟) datetime...Date HTML5 拥有多个可供选取日期和时间的新输入类型: date - 选取日、月、年 month - 选取月、年 week - 选取周和年 time - 选取时间(小时和分钟) datetime
Cookie 实际上是存储在客户端上的文本信息,并保留了各种跟踪的信息。...设置 Cookie 的 Servlet 会发送如下的头信息: 正如您所看到的,Set-Cookie 头包含了一个名称值对、一个 GMT 日期、一个路径和一个域。名称和值会被 URL 编码。...expires 字段是一个指令,告诉浏览器在给定的时间和日期之后"忘记"该 Cookie。 如果浏览器被配置为存储 Cookies,它将会保留此信息直到到期日期。...如果用户的浏览器指向任何匹配该 Cookie 的路径和域的页面,它会重新发送 Cookie 到服务器。...名称在创建后不能改变。 public void setValue(String newValue) 该方法设置与 cookie 关联的值。
领取专属 10元无门槛券
手把手带您无忧上云