【发布时间】:2014-04-22 20:40:15
【问题描述】:
我的表单数据通过 AJAX 发布时遇到了一个奇怪的问题。表格的某些部分未发送。具体来说,日期和时间部分。这是我的表格:
<script src="/js/x.js" ></script>
<div class="right">
<form id="xForm" method="POST" autocomplete="on">
<input id="xname" name="xname" type="text" placeholder="Name" />
<input id="address" name="address" type="text" placeholder="Address" />
<br/>
<input id="fromdate" name="fromdate" type="date" />
<input id="fromtime" name="fromtime" type="time" />
<br/>
<input id="todate" name="todate" type="date" />
<input id="totime" name="totime" type="time" />
<br/>
<input id="description" name="description" type="text" />
<input id="phone" name="phone" type="phone" />
<input id="friend1" name="friend1" type="hidden" />
<input id="friend2" name="friend2" type="hidden" />
<button class="xCreateButton" type="submit">create!</button>
</form>
</div>
当我使用我的 POST ajax 调用(/js/X.js 中的代码)发送它时:
$("#xForm").submit(function(evt)
{
evt.preventDefault();
alert ("date = " + document.getElementById("fromdate").value);
$.ajax ({
type: "POST",
url: "/xSubmission",
data: $(this).serialize(),
success: function (response)
{
alert (response);
$("#eventAjaxContent").text = "Success! Added!";
$("#eventAjaxContent").fadeOut (300);
}
});
它发送除fromdate/time 和todate/time 之外的表单数据(我在我的服务器日志中检查了Spring MVC 控制器/xSubmission 和我在Chrome 上的控制台调试器)。顺便说一句,就在 ajax POST 之前,我看到了正确设置日期的警报。
我的代码中的 fromdate/time 和 todate/time 有什么问题?如您所见,输入元素都有id 和name,所以这不是问题。语法中有什么我应该注意的吗?
感谢任何帮助。
【问题讨论】:
-
难以置信!我认为你是对的,@showdev,我使用的是 jQuery 1.3。我搬到了 1.10,问题就消失了。多么奇怪且无法追踪的问题(即,如果您不知情!)。
标签: javascript ajax forms post