theForm
내부에 제출 버튼이있는 다음과 같은 div 가있는 양식이 있습니다.
<div id="placeOrder"
style="text-align: right; width: 100%; background-color: white;">
<button type="submit"
class='input_submit'
style="margin-right: 15px;"
onClick="placeOrder()">Place Order
</button>
</div>
클릭하면 함수 placeOrder()
가 호출됩니다. 이 함수는 위의 div의 innerHTML을 “processing …”으로 변경합니다 (따라서 제출 버튼이 사라짐).
위의 코드는 작동하지만 문제는 양식을 제출할 수 없다는 것입니다! 이것을 placeOrder()
함수 에 넣으려고했습니다 .
document.theForm.submit();
그러나 그것은 작동하지 않습니다.
양식을 제출하려면 어떻게해야합니까?
답변
name
양식 의 속성을로 설정하면 "theForm"
코드가 작동합니다.
답변
당신이 사용할 수있는…
document.getElementById('theForm').submit();
…을 교체 하지 마십시오innerHTML
. 당신은 양식을 숨기고 다음 삽입 할 수 처리 … span
것이다 표시 그 자리에 있습니다.
var form = document.getElementById('theForm');
form.style.display = 'none';
var processing = document.createElement('span');
processing.appendChild(document.createTextNode('processing ...'));
form.parentNode.insertBefore(processing, form);
답변
내 경우에는 완벽하게 작동합니다.
document.getElementById("form1").submit();
또한 다음과 같은 기능으로 사용할 수 있습니다.
function formSubmit()
{
document.getElementById("form1").submit();
}
답변
document.forms["name of your form"].submit();
또는
document.getElementById("form id").submit();
이 중 하나를 시도해 볼 수 있습니다.
답변
오래된 게시물이지만 양식 name
내부에 태그 를 사용하지 않고 양식을 제출하는 방식을 그대로 둡니다 .
HTML
<button type="submit" onClick="placeOrder(this.form)">Place Order</button>
JS
function placeOrder(form){
form.submit();
}
이 솔루션이 다른 사람을 도울 수 있기를 바랍니다. TQ
답변
HTML
<!-- change id attribute to name -->
<form method="post" action="yourUrl" name="theForm">
<button onclick="placeOrder()">Place Order</button>
</form>
자바 스크립트
function placeOrder () {
document.theForm.submit()
}
답변
양식에 ID가 없지만 theForm과 같은 클래스 이름이있는 경우 아래 명령문을 사용하여 제출할 수 있습니다.
document.getElementsByClassName("theForm")[0].submit();