3 回答
TA贡献1111条经验 获得超0个赞
您需要使用submit方法来实现结果。
-> 分配id给按钮和表单元素,然后获取类似的元素,
const btn = document.getElementById('btn');
const form = document.getElementById('form');
始终建议在 javascript 中使用addEventListener()方法,而不是在 HTML 模板中使用。
form.addEventListener('submit', onSubmit)
-> 现在您可以在提交方法中更改属性的值,例如,
function onSubmit(){
btn.value = "Clicked";
btn.disabled = true;
return true
}
工作片段如下,
const btn = document.getElementById('btn');
const form = document.getElementById('form');
function onSubmit(){
btn.value = "Clicked";
btn.disabled = true;
return true
}
form.addEventListener('submit', onSubmit)
<form id="form" action="url" method="post">
<input type="submit" id="btn">
</form>
TA贡献1804条经验 获得超2个赞
表单是否发送 POST 或 GET 请求取决于其method属性。尝试将您的表格更改为
<form action="url" method="post">
<input type="submit" onclick="return onClick(event)">
</form>
TA贡献1880条经验 获得超4个赞
我的另一个解决方案,我自己找到了,非常感谢@Maniraj Murugan 在上面的帮助:使用 input type="button" 代替,在 onclick 事件中,使用 form.submit() 手动提交
<form action="url"method="post">
<input type="button" onclick="return onClick(event)">
</form>
并在 onClick 事件中
function onSubmit(e){
const btn = e.target
btn.value = "Clicked"
btn.disabled = true
const form = document.getElementById('form')
form.submit()
}
添加回答
举报