利用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://www.dhdzp.com" onsubmit="return validate(document.getElementByIdx_x('myText'));"> <!—參數(shù)的這種寫(xiě)法注意下-->
<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://www.dhdzp.com" 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://www.dhdzp.com">
<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://www.dhdzp.com">
<input type="text"/>
<input type="submit" value="submit" onclick="return validate()"/>
</form>
</body>
第五種方式:
<body>
<form action="http://www.dhdzp.com" 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è)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript實(shí)現(xiàn)的仿新浪微博原生態(tài)輸入字?jǐn)?shù)即時(shí)檢查功能【兼容IE6】
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的仿新浪微博原生態(tài)輸入字?jǐn)?shù)即時(shí)檢查功能,涉及javascript事件響應(yīng)及字符串的遍歷、轉(zhuǎn)換、判斷等相關(guān)操作技巧,需要的朋友可以參考下2017-09-09
JavaScript用二分法查找數(shù)據(jù)的實(shí)例代碼
本篇文章主要介紹了JavaScript用二分法查找數(shù)據(jù)的實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
js實(shí)現(xiàn)響應(yīng)按鈕點(diǎn)擊彈出可拖拽的非模態(tài)對(duì)話框完整實(shí)例【測(cè)試可用】
這篇文章主要介紹了js實(shí)現(xiàn)響應(yīng)按鈕點(diǎn)擊彈出可拖拽的非模態(tài)對(duì)話框,結(jié)合完整實(shí)例形式分析了原生JavaScript實(shí)現(xiàn)的可拖拽非模態(tài)對(duì)話框?qū)崿F(xiàn)技巧與使用方法,需要的朋友可以參考下2023-04-04
inquirer.js一個(gè)用戶與命令行交互的工具詳解
這篇文章主要介紹了inquirer.js一個(gè)用戶與命令行交互的工具詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05
javascript html5移動(dòng)端輕松實(shí)現(xiàn)文件上傳
這篇文章主要為大家詳細(xì)介紹了javascript html5移動(dòng)端輕松實(shí)現(xiàn)文件上傳的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-03-03
JS實(shí)現(xiàn)Enter鍵跳轉(zhuǎn)及控件獲得焦點(diǎn)
想讓Enter鍵跳轉(zhuǎn)的同時(shí)讓控件獲得焦點(diǎn),具體實(shí)現(xiàn)js代碼如下,感興趣的朋友可以參考下,希望對(duì)大家有所幫助2013-08-08

