Javascript 根据以前在同一表单上输入的值自动完成表单字段
我正在构建一个相当长的表单,它有多个表单字段和复选框。 为了使它尽可能从客户端角度可用,我希望在客户端填写表单时自动填充某些值 当客户端浏览表单时,此表单包含不同的部分。 因此,如果他在第一节中输入了他的名字、姓氏和身份证号码,他将在后面的一节中再次被提示这样做(这是由于法律义务)。我想从客户机的第一个条目中自动填充这些字段,以使流程更简单、更友好 最好的办法是什么 如果我说的是正确的,那么当表单提交到数据库时,表单中不能有两个相同的值。有一个值但从第一个值自动填充更有意义 希望这是有意义的Javascript 根据以前在同一表单上输入的值自动完成表单字段,javascript,html,forms,Javascript,Html,Forms,我正在构建一个相当长的表单,它有多个表单字段和复选框。 为了使它尽可能从客户端角度可用,我希望在客户端填写表单时自动填充某些值 当客户端浏览表单时,此表单包含不同的部分。 因此,如果他在第一节中输入了他的名字、姓氏和身份证号码,他将在后面的一节中再次被提示这样做(这是由于法律义务)。我想从客户机的第一个条目中自动填充这些字段,以使流程更简单、更友好 最好的办法是什么 如果我说的是正确的,那么当表单提交到数据库时,表单中不能有两个相同的值。有一个值但从第一个值自动填充更有意义 希望这是有意义的 &
<h3>Section 1</h4>
<ul>
<li>
<input type="text" name="client_first_name" id="client_first_name">
<label for="client_first_name">Client First Name:</label>
<input type="text" name="client_last_name" id="client_last_name">
<label for="client_last_name">Client Last Name:</label>
<input type="text" name="client_id" id="client_id">
<label for="client_id">Client ID Number:</label>
<li>
<label for="advisor_name">Advisor:</label>
<select type="text" name="advisor_name" id="advisor_name">
<option>Please Select Advisor</option>
<option value="andrew">Andrew</option>
<option value="jamie">Jamie</option>
</select>
<label for="advisor_id">Advisor ID Number:</label>
<input type="text" name="advisor_id" id="advisor_id">
</li>
</ul>
Later in document......
<h3>Section 7</h4>
<ul>
<li>
<input type="text" name="client_first_name" id="client_first_name">
<label for="client_first_name">Client First Name:</label>
<input type="text" name="client_last_name" id="client_last_name">
<label for="client_last_name">Client Last Name:</label>
<input type="text" name="client_id" id="client_id">
<label for="client_id">Client ID Number:</label>
<li>
<label for="advisor_name">Advisor:</label>
<select type="text" name="advisor_name" id="advisor_name">
<option>Please Select Advisor</option>
<option value="andrew">Andrew</option>
<option value="jamie">Jamie</option>
</select>
<label for="advisor_id">Advisor ID Number:</label>
<input type="text" name="advisor_id" id="advisor_id">
</li>
</ul>
第1节
-
客户名:
客户姓氏:
客户ID号:
-
顾问:
请选择顾问
安得烈
杰米
顾问ID号:
文件后面。。。。。。
第7节
-
客户名:
客户姓氏:
客户ID号:
-
顾问:
请选择顾问
安得烈
杰米
顾问ID号:
如果在同一页中,您需要不同的ID
你可以这样做
window.onload=function(){
var name=[“客户名”、“客户姓”、“顾问名”],字段={};
对于(var i=0;这将为您提供所需的答案:您需要记住,一个ID在一个页面上只能使用一次,该ID始终需要是唯一的,即使您使用它来收集相同的数据。如果在同一页面中,您需要不同的ID。您提供的JSFIDLE使用一个复选框来帮助自动生成。不希望使用复选框来指定填充其他字段。假设我可以使用“下一步”按钮执行相同的操作?为什么不复制将重复的值。例如,当前地址、永久地址
window.onload=function() {
var names=["client_first_name","client_last_name","advisor_name"],fields={};
for (var i=0;i<names.length;i++) {
var fieldSet = document.getElementsByName(names[i]);
if (fieldSet.length==2) {
fields[names[i]]=fieldSet[1];
if (fieldSet[0].type.indexOf("select")!=-1) {
fieldSet[0].onchange=function() {
fields[this.name].selectedIndex=this.selectedIndex;
}
}
else fieldSet[0].onkeyup=function() {
fields[this.name].value=this.value;
}
}
}
}