我几乎可以正常工作,但还不能完全完成。我在预订页面上有一个 jQuery 日期选择器,它以 mm/dd/yyyy 形式输入“到达”字段。我正在使用 Javascript 将其拆分为单独的 mm、dd 和 yyyy 值,我现在正在尝试将这些值反馈到表单上的月、日和年字段,然后再将表单发布到第三方处理站点.
我可以使用 Javascript 成功地为这些字段分配值,但我的挑战是在点击提交按钮后实现这一点,因为我需要它来携带用户选择的日期。
为了给你所有相关的部分,这是我的提交按钮:
<input type='submit' onclick='toProcess()' name="submitButton" id='submitButton'
value='Check Availability' />
这是获取日期并将其拆分为三个单独值的函数(在单击“提交”按钮时会正常运行):
function toProcess(){
var date = document.getElementById("Arrival").value;
var splitDate = date.split("/");
var arrivalMonth = splitDate[0];
var arrivalDay = splitDate[1];
var arrivalYear = splitDate[2];
return [arrivalMonth, arrivalDay, arrivalYear];
}
在这里,我使用返回的值来创建变量以反馈到表单中:
var newDates = toProcess();
arrivalMonth = newDates[0];
arrivalDay = newDates[1];
arrivalYear = newDates[2];
到目前为止,一切正常,没有任何问题。通过使用警报,我已经能够看到到目前为止这些值肯定是通过的。但我只是无法让这些值现在反馈到表单中。
我正在尝试这样做:
document.getElementById("Month").value = arrivalMonth;
document.getElementById("Day").value = arrivalDay;
document.getElementById("Year").value = arrivalYear;
如果我使用在点击提交按钮之前存在的变量,这种方法可以正常工作。我只是无法让新价值观发挥作用。
我怀疑问题在于,虽然通过单击“提交”按钮正确调用了该函数,但它后面的元素并没有被执行,因为它们在函数之外。我只是无法弄清楚如何将这些值从函数内部发送回表单字段。
我解释清楚了吗?对此的任何帮助将不胜感激。谢谢!