javascript
利用JS提交表单的几种方法和验证
工作中發(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.baidu.com" οnsubmit="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ā)表單提交事件οnclick="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.baidu.com" id="myForm">
???
???????<input type="text"/>
???????<input type="button" value="submitBtn" οnclick="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.baidu.com">
???
???????<input type="text"/>
???????<input type="submit" value="submit" οnsubmit="return validate()"/>
???
????</form>
??</body>
第四種方式:為submit按鈕添加上onclick事件,其中該事件用于表單提交的驗(yàn)證,功能類(lèi)似于在form標(biāo)簽中增加了onsubmit事件一樣
??<script type="text/javascript">
?????function validate() {
????????if (confirm("提交表單?")) {
???????????return true;
????????} else {
???????????return false;
????????}
?????}
??</script>
??<body>
???<form action="http://www.baidu.com">
???
???????<input type="text"/>
???????<input type="submit" value="submit" οnclick="return validate()"/>
???
????</form>
??</body>
?
第五種方式:
??<body>
????<form action="http://www.baidu.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ā)表單提交事件οnclick="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>
?
總結(jié)
以上是生活随笔為你收集整理的利用JS提交表单的几种方法和验证的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JSP 第一天:提交表单--获取表单中的
- 下一篇: SSH整合教程(struts2+spri