按鈕綁定回車事件后按回車表單執(zhí)行js方法后表單自動(dòng)提交刷新,先執(zhí)行了js的方法后自動(dòng)提交表單,使它相當(dāng)于沒有執(zhí)行js方法,查閱資料得知在一個(gè)form表單中,若只有一個(gè)input,按回車鍵表單會自動(dòng)提交,但是當(dāng)表單中存在多個(gè)input時(shí),按回車鍵不會執(zhí)行任何操作,這是form表單的一個(gè)特性。
解決這個(gè)問題有四種方法,如下:
第一種方法,把表單去掉,這是最管用,但也是最傻的方法,直接添加onclick事件,不用表單提交,這種方法就不贅述了。
第二種方法,很多人估計(jì)都想到過,就是既然一個(gè)input會自動(dòng)提交,多個(gè)input就沒問題,那么我給它多加一個(gè)input不就行了,有些人試過發(fā)現(xiàn)不行,那是為什么呢?
因?yàn)樗沁@么寫的,這樣當(dāng)然不行,一個(gè)隱藏域,type并不是text,所以不行。
但是,,使用這種方法就可以了,因?yàn)樗怯脴邮诫[藏輸入框的,實(shí)質(zhì)上還是一個(gè)type為text的input。
第三種方法,這種方法很好用,直接對form進(jìn)行操作,個(gè)人推薦這種方式。直接在form上加上onsubmit="return false;"這段話,它會阻止表單的回車鍵進(jìn)行提交。
例:
第四種方法,這種方法是直接對input進(jìn)行操作,強(qiáng)行將回車鍵操作去掉,這種方式也不錯(cuò),在input上加一個(gè)onkeydown事件,
onkeydown="if(event.keyCode==13){return false;}",阻止回車鍵的操作。
例:
以上四種方法都可以防止表單中只有一個(gè)input時(shí),按回車鍵會自動(dòng)提交表單的問題。