HTML表单的某些部分不是在POST上发送的

时间:2014-04-22 20:40:15

标签: javascript ajax forms post

我有一个奇怪的问题,我的表单数据是通过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/timetodate/time之外的表单数据(我在我的服务器日志中查看了Spring MVC控制器/xSubmission和我在Chrome上的控制台调试器)。顺便说一句,就在ajax POST之前,我看到正确设置日期的警报。

我的代码中的fromdate / time和todate / time有什么问题?如您所见,输入元素都有idname,因此这不是问题。我应该注意语法中的Anythinh?

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

转到更高版本的jQuery。我用的是1.3。转到jQuery 1.10解决了这个问题。