【发布时间】:2020-02-12 10:42:24
【问题描述】:
我有一个正在提交的 HTML 表单,无论警报和返回错误语句如何。下面的代码只是最后一个突变,但我也尝试了按钮上的“点击”事件以及我在网上找到的所有其他内容。相同的代码在其他页面上正常工作,只是在这个页面上它无论如何都被提交了。请注意,已到达警报,因此 if 语句会正确检查。也许只是对这个特定页面的一个说明,HTML 是由一个 AJAX 函数组成的,它从后端(Flask、Python)获取一些数据。
function deleteexposedsubmit(clicked_id) {
let deleteExposedForm = document.getElementById(clicked_id);
let allInputInForm = deleteExposedForm.querySelectorAll("input");
for (let i = 0; i <= allInputInForm.length; i++) {
console.log(allInputInForm[i].name);
console.log(allInputInForm[i].value);
if (allInputInForm[i].name == "hasConnectedProducts" && allInputInForm[i].value == "yes") {
alert("The Service you are trying to delete has connected consumers. Cannot be deleted");
return false;
} else {
deleteExposedForm.submit();
}
}
}
<form id="deleteexposedform_1" action="deleteexposed" method="POST"
onsubmit="deleteexposedsubmit(this.id); return false;">
<input type="hidden" name="selectedplatformtodeleteexposed" id="selectedplatformtodeleteexposed_1" value="Platform 1">
<input type="hidden" name="selectedexposedtodeletename" id="selectedexposedtodeletename_1" value="Service with qualities and aspects">
<input type="hidden" id="hasConnectedProducts1" name="hasConnectedProducts" value="yes">
<input type="hidden" id="ConnectedProducts1" name="ConnectedProducts" value="Test ingest with same qa">
<input type="hidden" name="selectedexposedtodeletetype" id="selectedexposedtodeletetype_1" value="EPS">
<button class="links" id="b_deleteexposedform_1" title="Press to delete the exposed service on the selected platform">delete</button></form>
【问题讨论】:
-
我建议你先重构你的代码,让人们更容易阅读。
标签: javascript jquery html forms