我們經常是這樣嵌套的:
1 <form id="formId1" action="" method="post"> //表單1 2 <form id="formId2" action="" method="get"> //表單2 3 <input id="but1" type="button" value="提交"> 4 </form> 5 <input id="but2" type="button" value="保存"> 6 </form>
然后,我們會發現我們表單2執行submit提交時會報錯找不到submit(),
我們執行console.log(document.getElementById('formId2'));會發現結果為null;
既然我們發現form表單可並存但是不能嵌套了,那么怎樣去解決呢?
<form id="formId1" action="" method="post"> <input id="but1" type="button" value="提交"> <input id="but2" type="button" value="保存"> </form>
上臨代碼:我們把多個表單執行的事件放在一個表單里面,但提交的時候我們加以控制:
document.getElementById('but1').onclick=function(){ document.getElementById('formId1').setAttribute("action","www.baidu.com"); } document.getElementById('but2').onclick=function(){ document.getElementById('formId1').removeAttribute("action","www.baidu.com") document.getElementById('formId1').setAttribute("action","www.google.com"); }
這樣通過上傳/請求時,Action的變換,可以解決。