我有以下 HTML:
<body>
<form action="/test/interop/InteropServlet" method="post" id="formTester" name="formTester">
<input type="hidden" name="ApiName" value=""/>
<input type="hidden" name="test.userId" value="admin"/>
<input type="hidden" name="test.password" value="admin"/>
<input type="hidden" name="test.progId" value="CustomTester"/>
<input type="hidden" name="InteropApiData" value=""/>
<input type="hidden" name="TemplateData" value=""/>
我想使用 Javascript 来获取这些隐藏值并在单击按钮时设置它们。我有以下 JavaScript 方法:
function callAPI(myform) {
saveCookies();
myform.ApiName.value=document.getElementById("traceName").value;
myform.TemplateData.value=document.getElementById("templateXMLText").value;
myform.test.userId.value=document.getElementById("userIDText").value;
myform.test.password.value=document.getElementById("passwordText").value;
myform.action="http://"+document.getElementById("urlText").value + "/test/interop/InteropHttpServlet";
myform.submit();
}
这适用于名称中没有句点的隐藏输入(即 test.userId、test.password),因为我收到错误“错误:TypeError:myform.test 未定义”。我无法重命名这些隐藏的输入,因为我不维护我调用的代码并且变量必须命名为 this。
有什么方法可以从表单中读取名称中带有句点的隐藏输入?