首页
学习
活动
专区
圈层
工具
发布

表单提交刷新页面问题

今天开发中遇到了一个问题,刚开始没有头绪,不知道怎样解决,后来静下来一想,搜索下吧,经过搜索相关资料,很好的解决。...,结果肯定是没有实现无刷新搜索了。...想了想,可能是按回车后默认提交了表单,于是将form去掉,果然不刷了。但是还是会有很多地方需要用到form。 一个表单下,如果只有一个文本框时,按下回车将会触发表单的提交事件。...既然是只有一个文本框才会出问题,那么可以加一个隐藏的文本框,如下: 现在代码成了这样: post" action=""> 的方法还不足以让你去解决问题,那么你可以用以下方法来阻止因为回车而引起的表单自动提交: post" action="" onsubmit

2.2K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Laravel 多态关系的表单验证

    相信大家使用 Laravel 开发应用的时候都会有评论模块吧,而且我们通常将该模块设计为多态关系(如果你对这个关系还不明白的话,请赶紧打开 Laravel 文档数据库关系章节复习一遍吧!)。...先看看我们的数据库结构: id commentable_id commentable_type body 那么遇到一个问题,如果写入数据呢?...一般来讲有两种方式,而我们通常用的一种是从父模型使用关系写入,比如我们有一个 App\Thread 类,它里面对评论的关系是这样的: class Thread {    public function..., ]); 其实不管哪一种,我们都少不了表单验证,而且无论使用任何一种我们都得需要传入两个关键参数: 类型与 id,那就涉及到一个问题,如何验证呢?...是不是简单很多,而且这样验证规则还能重用在其它同类多态关系的地方哦。 这样就结束了么?没有! 我们上面的拓展验证规则的写法没有感觉有些粗暴么?是时候规范一下了。

    2.9K40

    解决 php提交表单到当前页面,刷新会重复提交 的问题

    解决 php提交表单到当前页面,刷新会重复提交 今天在写php程序的时候,发现一个问题,就是post提交到本页的表单数据,刷新后会反复提交。因此向群友请教。最终,得到了解决。...第一次post处理完数据后把token存入session,接下来每次post判断一下token跟session中的一不一样,一样则说明数据处理过了。 然后给出一段代码 示例 <?...php session_start(); //读取服务器端的session_id,如果没有的话赋值为-1 $session_id = empty($_SESSION['session_id']) ?...-1 : $_SESSION['session_id']; //读取客户端的post_id,如果没有的话赋值为-2 $post_id = empty($_POST['post_id']) ?..."已经处理过了,不管了"; }else{ //如果页面还没有提交过表单,则显示表单,否则处理post过来的数据 if($post_id == -2

    2.7K40

    3分钟短文 | Laravel 表单验证数组的数据

    引言 本文说一个小的知识点,在表单验证中,对数组数据进行验证, 我们需要进行两项,一项是数组本身的验证,一项是数组元素的验证。 ?...学习时间 例如有一个POST请求过来的数据,由3个数组组成,name,amount,description。...明确了需求,我们发现上述的验证,laravel内置的规则基本可以解决。只是对于字段是数组,且数组长度满足某些条件的要求,有些苛刻。具体如何实现呢?...laravel表单验证规则中,使用星号,可以匹配数组的元素。...那么在laravel的验证器中,应该如何写呢? 这与指定了字段名的数组不同,这个数组的键是自动编排的数字,所以,我们需要通配键名。

    4K10

    Laravel 软删除存在的问题

    ,查询关联关系,不会对中间表应用软删除条件 belonsToMany中的中间表是传入的表名参数,天然没办法获取中间表是否需要应用软删除。...但是,如果要查询包含已删除的关联关系,中间表的删除标记条件不会去除。 hasManyThrough中,中间表是通过中间对象传入,可以获取到中间表是否应用软删除。...但是中间表的软删除不是通过scope实现的,关联关系对象在创建的时候就已经把中间表的软删除条件附加上去了,因此,即使指定了withTrashed,也会有中间表的软删除查询条件。...如果要修改,也可以,通过scope的方式附加软删除条件,这样就能保证软删除的查询条件是在真正查询的时候才附加上去。...从上面可以看出,Laravel的软删除,在关联关系中会造成一些查询上条件的歧义,非常容易产生bug.而且,belongsToMany中间表的问题是无解的。

    2.7K20

    PhpStorm表单提交时获取不到post数据的解决方法

    解决PhpStorm表单提交时获取不到post数据问题,将apache服务器目录映射到本地目录,更改PhpStorm配置,实现其直接调用本地服务器打开浏览器调试程序,解决Apache/2.4.23 (Win64...2.观察你运行php的浏览器地址,会发现在PhpStorm中打开浏览器使用的服务端口号是63342(URL是localhost:63342/这样的形式) 问题的原因在于:PhpStorm默认使用的是自带的内部服务器...PhpStorm这个内置服务器使用63342端口,而且服务器内部有问题,导致POST方法异常; 而如果把项目放在Apache服务器的工作目录下,在地址栏输入localhost,此时使用的是Apache服务器...此时从PhpStorm中点击浏览器,访问的URL已经没有了63342端口这个字段,而是使用了本地Apache服务器,相应的表单数据也可以正常接收了。...参考资料: 1.知乎:木子林夕的回答 2.HolyNova的博文:Apache HTTP 服务器目录映射到本地目录 声明:本文由w3h5原创,转载请注明出处:《PhpStorm表单提交时获取不到post

    2.6K00

    Vuex页面刷新的数据丢失问题

    Vuex页面刷新的数据丢失问题 1、问题描述 2、解决方案:使用sessionStorage   在实际项目中,经常会遇到多个组件需要访问同一个数据的情况,且都需要根据数据的变化作出响应,而这些组件之间可能并不是父子组件这种简单的关系...1、问题描述 Vuex用起来确实很舒服,但是今天碰到了个问题,就是我将JWT和一些权限字符串使用store保存的时候,刷新页面之后这些值就没了,由于我后端集成了SpringSecurity,所以每次请求我都会去验证...JWT,如果刷新页面的话,后续请求头中就没有token,就会导致报错。   ...如下图:   刷新页面之后: 2、解决方案:使用sessionStorage   我们将state的数据保存在localStorage/sessionStorage/Cookie中,这里以sessionStorage...此时再刷新页面:   可以看到,数据仍然在,问题解决。

    2.1K30

    Laravel5.2之Validator

    引言: Laravel提供了Validator模块,可解决表单提交验证等一些需求,并且可以在视图View中显示错误验证信息,交互还是很友好的。注明:作者水平有限,有错误或建议请指正,轻拍。...; } 填写表单,name="name"和age="age",点击提交按钮,没有打印"form post success!!!"...;填写name="name"和age="18",打印"form post success!!!",说明验证模块已经工作了,但页面没有显示验证错误信息。...@postValidator'); }); (二)、验证数组形式表单 有时候在写表单时,需要同时输入相类似的表单输入时,可以把这些input作为数组看待,laravel5.2也提供了数组形式的验证...1、在TestValidatorRequest类里写验证规则 authorize()方法主要用来设置用户权限,返回false时会返回一个403并且控制器代码不能执行,如没有权限的用户不能提交表单。

    14.2K31

    跨语言的POST请求问题的解决

    部门对外提供了一个HTTP的POST接口,但是对方公司的程序员使用C语言进行的调用,PHP这边一直无法获取到参数.遇到这种情况是因为对方没有完全按照HTTP协议中的POST发送数据.在HTTP头部分没有增加...Content-Type: application/x-www-form-urlencoded头,数据部分直接传递的json字符串,这样就导致PHP这边解析不到$_POST的数据,传递内容的字符串应该是以...name=xxx&age=xxx这种形式传递 Content-Type是属于HTTP的内容头部,当增加这个头部,并且数据格式正确时,PHP的$_POST才能够获取得到数据 Content-Type:application...分割,加载这个新的url。 当action为post时候,浏览器把form数据封装到http body中,然后发送到server。...在浏览器控制台可以看到它们的内容都是以'From Data'形式展现 Content-Type:application/json 如果ajax的头部是application/json,那么post时,数据必须以

    1.1K30

    在 Laravel 控制器中进行表单请求字段验证

    接下来,我们就一起来看看如何在 Laravel 中对表单请求进行验证。...作为一个灵活的框架,Laravel 提供了多种方式对表单请求进行验证,你可以在控制器中通过 $this->validate() 方法验证用户请求,也可以通过单独的表单验证类定义验证规则,再将其注入到相应的控制器方法...响应(错误码为 422),如果是正常的 POST 表单请求的话,会重定向到表单提交页,并包含所有用户输入和错误信息,以便重新渲染已填写表单并显示错误信息。...下面我们分别以 POST 提交表单和 Ajax 请求为例简单演示下验证错误信息的读取,首先来看 POST 提交表单。...,没有使用这个 Trait 的话就不能在代码中这么调用。

    7.1K10

    关于在用curl函数post网页数据时,遇上表单提交 type为submit 类型而且没有name和id时可能遇到的问题及其解决方法

    curl函数库实现爬网页内容的链接在 http://www.cnblogs.com/linguanh/p/4292316.html 下面这个是没有name和id 标识的 的用curl去获取网页cookie 的文章中 出现过的一个 变量 data,即要传送过去的 数据, 这个数据一般是网站的登陆账号和密码,对应着输入框的name,下面我举一个例子。...上面的例子是最简单的,实际上,如果遇到了我说的,怎么办, 这时候要看它的表单的 action的链接 因为这个才是真正的提交页面...,然后直接post UserName=123456&PassWord=123就行了。...ajax提交的,就要用到抓包工具,抓取传送的源代码,再组合成data,post 还一种情况,就是有隐藏的输入情况,什么意思呢, type="hidden" 这是不用自己输入的,但是,我们在用curl函数访问登陆页面的时候

    1.5K70
    领券