利用JS提交表單的幾種方法和驗(yàn)證(必看篇)
工作中發(fā)現(xiàn)表單提交方便的問(wèn)題,很多時(shí)候IE下提交好好的,打了火狐下就出現(xiàn)了問(wèn)題,利用提交按鈕就不成功了,于是利用JS的方式就成功了,也不知道為什么。在導(dǎo)師的催促下就總結(jié)出以下的幾種常用表單提交的方法。
第一種方式:表單提交,在form標(biāo)簽中增加onsubmit事件來(lái)判斷表單提交是否成功
<script type="text/javascript">
function validate(obj) {
if (confirm("提交表單?")) {
alert(obj.value);
return true;
} else {
alert(obj.value);
return false;
}
}
</script>
<body>
<form action="http://m.fzitv.net" onsubmit="return validate(document.getElementByIdx_x('myText'));"> <!—參數(shù)的這種寫法注意下-->
<input type="text" id="myText"/>
<input type="submit" value="submit"/>
</form>
</body>
第二種方式:通過(guò)button按鈕來(lái)觸發(fā)表單提交事件onclick="submitForm();",會(huì)忽略掉其他標(biāo)簽中的屬性,比如form標(biāo)簽中的onsubmit屬性就失效了。這時(shí)為了進(jìn)行表單驗(yàn)證,可以將驗(yàn)證代碼放在submitForm();方法中進(jìn)行驗(yàn)證。
<script type="text/javascript">
function validate() {
if (confirm("提交表單?")) {
return true;
} else {
return false;
}
}
function submitForm() {
if (validate()) {
document.getElementByIdx_x("myForm").submit();
}
}
</script>
<body>
<form action="http://m.fzitv.net" id="myForm">
<input type="text"/>
<input type="button" value="submitBtn" onclick="submitForm();"/> <!—也可以使用document.getElementByIdx_x(“該按鈕的id”).click();來(lái)執(zhí)行onclick事件-->
</form>
</body>
第三種方式:將onsubmit事件放在submit標(biāo)簽中,而不是form標(biāo)簽中,此時(shí)表單驗(yàn)證失效,點(diǎn)擊提交按鈕表單直接提交
<script type="text/javascript">
function validate() {
if (confirm("提交表單?")) {
return true;
} else {
return false;
}
}
</script>
<body>
<form action="http://m.fzitv.net">
<input type="text"/>
<input type="submit" value="submit" onsubmit="return validate()"/>
</form>
</body>
第四種方式:為submit按鈕添加上onclick事件,其中該事件用于表單提交的驗(yàn)證,功能類似于在form標(biāo)簽中增加了onsubmit事件一樣
<script type="text/javascript">
function validate() {
if (confirm("提交表單?")) {
return true;
} else {
return false;
}
}
</script>
<body>
<form action="http://m.fzitv.net">
<input type="text"/>
<input type="submit" value="submit" onclick="return validate()"/>
</form>
</body>
第五種方式:
<body>
<form action="http://m.fzitv.net" id="myForm">
<input type="text"/>
<input type="button" value="submitBtn" id="myBtn"/>
</form>
</body>
<script type="text/javascript">
function validate() {
if (confirm("提交表單?")) {
return true;
} else {
return false;
}
}
通過(guò)button按鈕來(lái)觸發(fā)表單提交事件onclick="submitForm();",會(huì)忽略掉其他標(biāo)簽中的屬性,比如form標(biāo)簽中的onsubmit屬性就失效了。這時(shí)為了進(jìn)行表單驗(yàn)證,可以將驗(yàn)證代碼放在submitForm();方法中進(jìn)行驗(yàn)證
function submitForm() {
if (validate()) {
document.getElementByIdx_x("myForm").submit();
}
}
document.getElementByIdx_x("myBtn").onclick = submitForm;
</script>
以上這篇利用JS提交表單的幾種方法和驗(yàn)證(必看篇)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- js表單登陸驗(yàn)證示例
- JS如何實(shí)現(xiàn)form表單登錄驗(yàn)證并使用MD5加密詳解
- js 常用正則表達(dá)式表單驗(yàn)證代碼
- JavaScript表單驗(yàn)證完美代碼
- javascript制作的簡(jiǎn)單注冊(cè)模塊表單驗(yàn)證
- 收藏的js表單驗(yàn)證控制代碼大全
- JS實(shí)現(xiàn)的簡(jiǎn)單表單驗(yàn)證功能完整實(shí)例
- JavaScript表單即時(shí)驗(yàn)證 驗(yàn)證不成功不能提交
- JS實(shí)戰(zhàn)之寫一個(gè)登錄表單驗(yàn)證學(xué)會(huì)判斷輸入合法性
相關(guān)文章
javascript removeChild 使用注意事項(xiàng)
removeChild的注意事項(xiàng)。大家可以參考下。2009-04-04
淺談tudou土豆網(wǎng)首頁(yè)圖片延遲加載的效果
經(jīng)常上tudou網(wǎng),發(fā)現(xiàn)tudou首頁(yè)加載圖片的功能很有意思,tudou首頁(yè)從"娛樂(lè)"這個(gè)板塊往下的所有視頻的縮略圖并不是在頁(yè)面打開(kāi)后就加載的,而是當(dāng)用戶拖動(dòng)滾動(dòng)條到了"娛樂(lè)"這個(gè)板塊,才開(kāi)始加載圖片的。2010-06-06
JavaScript提高網(wǎng)站性能優(yōu)化的建議(二)
這篇文章主要介紹了JavaScript提高網(wǎng)站性能優(yōu)化的建議(二)的相關(guān)資料,需要的朋友可以參考下2016-07-07
解讀new?Object()和Object.create()的區(qū)別
這篇文章主要介紹了解讀new?Object()和Object.create()的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
layui前端時(shí)間戳轉(zhuǎn)化實(shí)例
今天小編就為大家分享一篇layui前端時(shí)間戳轉(zhuǎn)化實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11
JS多次請(qǐng)求接口按順序依次執(zhí)行解決辦法
在JavaScript中for循環(huán)是同步的,意味著每個(gè)循環(huán)都會(huì)等待前一個(gè)循環(huán)的請(qǐng)求完成后才會(huì)執(zhí)行下一個(gè)循環(huán),這篇文章主要給大家介紹了關(guān)于JS多次請(qǐng)求接口按順序依次執(zhí)行的解決辦法,需要的朋友可以參考下2024-04-04
手把手教你搭建ES6的開(kāi)發(fā)運(yùn)行環(huán)境
如今ES6已經(jīng)發(fā)布了有一段時(shí)間了,很多人學(xué)了ES6但是卻沒(méi)運(yùn)行環(huán)境,下面這篇文章主要給大家介紹了關(guān)于搭建ES6運(yùn)行環(huán)境的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-07-07
千萬(wàn)不要錯(cuò)過(guò)的JavaScript高效對(duì)比數(shù)組差異方法
前端開(kāi)發(fā)中,我們通常需要對(duì)比兩個(gè)數(shù)組對(duì)象的差異。這其中有很多種方法,但是有些方法會(huì)帶來(lái)一些問(wèn)題,所以本文為大家準(zhǔn)備了一個(gè)高效方法,需要的可以參考一下2023-05-05
前端無(wú)感知刷新token以及超時(shí)自動(dòng)退出實(shí)現(xiàn)方案
前端需要做到無(wú)感刷新token,即刷token時(shí)要做到用戶無(wú)感知,避免頻繁登錄,下面這篇文章主要給大家介紹了關(guān)于前端無(wú)感知刷新token以及超時(shí)自動(dòng)退出的實(shí)現(xiàn)方案,需要的朋友可以參考下2024-01-01

