使用先前选定的表单字段的选定值填充表单字段

时间:2013-05-03 07:39:52

标签: javascript forms

我正在使用带有Joomla的RS表格进行假期预订表格,我希望通过以前的问题得到答案,自动填写其他问题的答案,以便例如回答'什么航空公司是1号旅行的人?'自动填写“航空公司是2人旅行的航空公司?”的答案。

当选中复选框(以下代码中的id = samedetails20)时,我可以对简单文本字段执行此操作。选中后,以下工作:

<script type="text/javascript">

function repeat(f) {
  if(f.samedetails20.checked == true) {

f.airline2.value = f.airline1.value;
f.Airport2.value = f.Airport1.value;
f.flightno2.value = f.flightno1.value;
f.airlinereturn2.value = f.airlinereturn1.value;
  }
}

</script>

HTML

<input type="text" value="" size="20" name="form[airline2]" id="airline2" class="rsform-input-box">`

但是,该表格还包括一个下拉列表,用于选择到达/离开时间以及一个用于到达/离开日期的弹出日历。我不知道如何从这些值中获取值以自动填充其他字段。

我曾尝试使用selectedIndex和选项,但这不起作用或我做错了,例如。

f.DepartureTime2.value = f.DepartureTime1.options[f.DepartureTime1.selectedIndex].value;

示例HTML

<select name="form[DepartureTime2][]" id="DepartureTime2" class="rsform-select-box"><option value="00">00</option><option value="01">01</option>
<option value="02">02</option><option value="03">03</option> 

我也不知道如何为弹出日历执行此操作:

示例HTML:

<input id="txtcal9_1" name="form[dateofdeparture1]" type="text" class="txtCal rsform-calendar-box" value="Departure date"> (Departure Date is a default value until date is selected)

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

Javascript仅限客户端。没有值发送到服务器,JS必须只使用客户端计算机上的内容(即从服务器收到的内容)。

这意味着当页面重新加载后发送新页面(如刷新或表单提交或新窗口)时,Javascript会发送新值。除非您的浏览器(=客户端)因某种原因记住您在<input>框中输入的内容,否则旧版本已消失。

所以,不,你不能只用Javascript做到这一点。您需要服务器端(如PHP或ASP或JSP)来接收服务器端的值,处理它们,然后将它们发送回客户端以供Javascript使用。