详解如何使用jQuery的submit()方法提交表单
这次,我们来学习一下“submit()”方法,它可以让你从jQuery中操作Form元素的提交!
什么是submit()
那么我们先从“submit()”方法的基础知识说起吧!
“submit()”是一种允许您在 jQuery 端对表单提交过程进行编程的方法。
例如,看一下我在下面准备的简单表单元素。
<form> <input type="text"> <input type="submit" value="提交"> </form>
请注意,Form元素内有一个带有“submit”类型的输入标签的按钮。
这时候如果使用“submit()”方法,就可以描述当用户点击提交按钮时会执行的处理。例如,可以在将表单的内容发送到服务器之前执行诸如检查输入是否正确的处理。
使用submit()
从这里开始,让我们学习使用 subtmi() 方法的实际编程技术!
如何编写submit()
首先,我们来看看submit()的基本语法!
$(Form element).submit(process to be executed)
例如:
<body> <form> <input type="text"> <input type="submit" value="提交"> </form> <script> $('form').submit( 要执行的操作 ); </script> </body>
在此示例中,放置了一个简单的 Form 元素,并通过编写“$('form')”将目标元素指定为 Form。
可以看到 submit() 是针对这个 Form 执行的。
之后在 submit() 的参数中描述要执行的过程,一般来说是设置一个函数。
如何在函数中设置事件处理
让我们将要执行的函数设置为 submit() 的参数!
最简单的方法是将函数指定为参数,因为它是“匿名函数”。
示例:
$('form').submit(function() { alert('已提交!'); });
在此示例中, submit()使用设置为 Form 元素的参数的函数执行。
在这种情况下,当用户单击表单的“提交按钮”时,将显示alert弹窗。
此外,可以像普通函数一样执行在别处创建的函数,而不是匿名函数。
$('form').submit( sample ); function sample() { alert('已提交!'); }
在此示例中,您可以看到函数名称“sample()”被指定为 submit() 的参数。
如果函数内部的处理变得复杂,最好把函数写在别处,让代码更具可读性。
更改表单操作
当 Form 元素执行提交时,它与指定的链接地址进行通信,但您可以从 jQuery 更改此链接。
submit()时如何更改
首先,我们来看一个简单的在submit()时改变链接的方法!
方法很简单,只需从jQuery中更改Form标签的action属性中描述的链接即可。
请参阅下面的示例!
$('form').submit(function() { $(this).attr('action', '/sample.html'); });
在这个例子中,你可以看到“attr()”方法用于在 submit() 执行时改变 action 属性值。
如果您将要发送的服务器的路径写入 attr() 的第二个参数,则表单的链接将被更改。
即使预先设置了 Form 标签的 action 属性,执行 submit() 时也会更改。
更改每个按钮(action)提交链接的方法
现在,让我们假设一个带有多个按钮的 Form 元素,并学习如何更改每个按钮的提交链接!
为了实现这一点,我们需要设计一种方法来告诉函数在每次单击按钮时发送到不同的链接。
所以让我们创建一个这样的函数:
function setAction(url) { $('form').attr('action', url); $('form').submit(); }
此函数获取“url”作为参数并将该 URL 设置为 attr() 方法的第二个参数。
因此,每次执行submit()时,只需告诉函数要发送到,就可以实现不同的通信。
之后,您可以如下设置Form元素上的按钮!
<form> <input type="button" value="提交1" onclick="setAction('/sample.html')"> <input type="button" value="提交2" onclick="setAction('/index.html')"> </form>
通过在onclick属性中指定函数并将目的地链接设置为参数,您可以为每个按钮指定不同的操作属性值。
需要注意的是,将type属性值设置为“button”而不是“submit”!
如果写成“submit”的话可能会被重复发送,所以不要忘记写成“button”!
取消submit()
不仅要学习如何执行submit(),还要学习如何取消提交处理!
根据这个,例如确认表单的内容,如果错误的话可以取消发送处理。
如何取消submit()
首先,让我们看看如何取消(无效)submit()的执行!
至于如何取消,submit()方法其实有一个特性,如果返回值指定为“false”则停止执行。
使用它通常会导致类似的结果:
$('form').submit(function() { return false; });
你需要做的很简单,在“return 语句”中返回 false 即可。
根据这个,submit()方法中止执行,结果是发送处理被取消。
submit()之前如何做一些处理
现在您已经了解了如何取消提交过程,让我们编写一个在执行 submit() 之前检查表单内容的过程!
例如,如果用户在输入表单中没有输入任何内容,请尝试取消提交过程并阻止其执行。
请参阅下面的示例!
$('form').submit(function(e) { var count = $('input').val().length; if( !count ) return false; });
在此示例中,输入表单中的字符数使用“val().length”检查。
换句话说,如果字符数为“0”,则表示没有输入任何内容。因此,如果没有输入,则使用 IF 语句返回 false。
使用不带参数的submit()
到现在为止,在submit()方法的自变量中指定了想要执行的处理的函数。
但是,即使不指定这个自变量,也可以使用submit()。
在“无参数”的情况下,submit()处理可以用其他的HTML元素来代替。
请看下面的样本案例!
$('button').click(function() { $('form').submit(); });
这里描述的是普通按钮元素中的点击事件处理,但是您可以看到在其内容中执行了 submit()。
仅此描述,当点击按钮时,执行Form元素的提交过程。
通常点击Form元素中的提交按钮执行submit()过程,但也可以用其他按钮代替。
处理方法会根据 submit() 的参数“是”或“否”而略有变化,因此您可以习惯使用这两种方法!
结语
这次我们学习了如何使用jQuery的submit()方法提交表单!
基于以上内容,让我们尽自己最大的努力将其运用到编程中去吧!
本文来源:词雅网
本文地址:https://www.ciyawang.com/jquery-form-submit.html
本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。
相关推荐
-
jQuery淡入:提高网站用户体验的利器
在现代Web设计中,用户体验是至关重要的一环。一个好的用户体验能够吸引许多用户,使他们留在你的网站上,而一个糟糕的用户体验则可能导致用户迅速离开你的网站。在这个背景下,jQuery淡入成为了提高网站用...
-
【jQuery入门】总结如何用replace()替换字符串
replace()方法是什么? 下面就从replace方法的基础知识开始学习吧!replace方法是一种允许您用任何字符替换字符串的方法。 它对一般的字...
-
获取jquery文本表单的输入事件
编写一个示例代码,在jquery的“on”方法中使用“touchmove”获取文本表单的输入事件。获取文本表单的输入事件要获取文本表单的输入事件,请在“on”方法中指定“input”。$('指...
-
详解如何在jQuery选择器中使用正则表达式和属性过滤器
这一次,我们来学习使用正则表达式和属性过滤器来指定 jQuery 选择器的方法!比正则表达式更简单的属性过滤器是什么?让我们从学习属性过滤器开始,它比正则表达式更容易指定选择器!首先,jQuery 选...
-
使用jQuery在指定的html标签中插入html代码
编写一个示例代码,使用jquery的wrapInner()方法在指定的html标签插入插入html代码。在指定的html标签中插入html代码wrapInner()方法可以在指定的html标签插入插入...
-
详解jQuery使用contents()方法获取指定元素的子元素和文本节点
这一次,让我们通过一个示例来了解如何使用 jQuery 的“contents()”方法。 如果只是简单的“选择子元素”,可以在children()方法中使用,但在选择“不...
-
详解jQuery使用.show()/.fadeIn()淡入指定元素
这一次,让我们通过一个示例来解释如何使用jQuery的“.show( )/.fadeIn()”。.show()/.fadeIn() 的作用是什么?.show()/.fadeIn()可以“淡入显示dis...
-
详解jQuery使用fadeTo()方法改变指定元素的透明度
这一次,让我们通过一个示例来解释如何使用 jQuery 的“.fadeTo()”。fadeTo()方法 的功能是什么?fadeTo() 方法是逐渐改变被选元素的不透明度为指定的值(褪色效果)。但是,这...
-
jquery淡出指定元素
使用“fadeOut”淡出指定元素。HTML标签.fadeOut(时间(毫秒))下面是一个示例代码,当单击按钮时,指定元素会在 1 秒内淡出。<!DOCTYPE html> &...
-
详解jQuery使用.hide()/.fadeOut() 淡出和隐藏指定元素
jQuery的“.hide()/.fadeOut()”是一种可以在淡出的同时隐藏指定元素的方法 这一次,我们通过一个示例来解释如何使用jQuery 的“.hide( )/...