如何在提交java脚本之前从formData中删除值



这里我准备formData值并存储到一个隐藏变量中。因此,我想删除添加到res变量的值Once。知道吗?

我尝试了formData.delete(对[0](;。。。不起作用

function prepareOCPDepEntries(isButton){
var formEl = document.forms.mainForm;
var formData = new FormData(formEl);
var res = "";
for(var pair of formData.entries()) {
if(pair[0].startsWith("_")){
res = res +"|"+ pair;
formData.delete(pair[0]);
}
}
document.getElementById("depEntry").value = res;
document.forms.mainForm.disabled = true;
}

HTML代码;

对[0]将为_0.0


<select name="_0.0" id="_0.0" >
<option value="1" >Y</option>
<option value="0" selected>N</option>
<option value="2" >A</option>
<option value="3" >T1</option>
<option value="4" >T2</option>
<option value="5" >T3</option>
</select></TD>
<select name="_0.1" id="_0.2" >
<option value="1" >Y</option>
<option value="0" selected>N</option>
<option value="2" >A</option>
<option value="3" >T1</option>
<option value="4" >T2</option>
<option value="5" >T3</option>
</select></TD>

function prepareOCPDepEntries(formEl) {
const formData = new FormData(formEl);
let res = "";
for (var pair of formData.entries()) {
console.log(pair[0])
if (pair[0].startsWith("_")) {
console.log(pair[0])
res = res + "|" + pair;
formData.delete(pair[0]);
}
}
console.log([...formData.entries()]); // Works. There's only one entry in the Iterator
document.getElementById("depEntry").value = res;
document.forms.mainForm.disabled = true;
}
document.querySelector("#mainForm").addEventListener("submit", function(ev) {
ev.preventDefault();
prepareOCPDepEntries(this);
})
<form id="mainForm">
<input value="123" name="_0.0" type="text">
<input value="999" name="bar" type="text">
<button>Submit</button>
</form>
<textarea id="depEntry"></textarea>

最新更新