2014-03-05 3 views
0

날짜 표시기가 있습니다. 양식 데이터를 ajax 호출로 게시하고 싶습니다. 내 문제는 양식에 datepicker에서 선택한 날짜가 표시되지 않는다는 것입니다. 여기 jQuery datepicker가있는 Ajax 게시물의 날짜가 표시되지 않습니다.

<div id="datepicker-inline" name="date"></div> 

내 아약스 포스트

입니다 : 양식 내부에있는 날짜 선택기에 대한 HTML 여기 http://wrapbootstrap.com/preview/WB00U99JJ

됩니다 : 여기

내가 날짜 선택기로 사용하고있는 주제에 대한 링크입니다
$('#submit').on('click', function() { 
    var form = $('form'); 
    var date = $('#datepicker-inline'); 
    $.ajax('/api/service', { 
     type: 'POST', 
     contentType: 'application/json', 
     dataType: 'json', 
     data: form.serializeArray(), 
     success: function(response) { 
      console.log("Success!"); 
      $('#status').addClass('status-bar-success'); 
     }, 
     error: function() { 
      console.log('OH NOES!'); 
      console.log(form.serializeArray()); 
      console.log(date.val()); 
      $('#status').addClass('status-bar-error'); 
     } 
    }); 
}); 

나는 콘솔에서 실행되는 것을보고 있습니다. form.serializeArray()가 작동하고 date.val()이 선택된 날짜를 가져옵니다. 내 질문은 form.serializeArray()에 날짜 값을 어떻게 넣었습니까? 그것은 어떤 input 요소를 가지고 있지 않기 때문에

* UPDATE *

HTML

<div id="datepicker-inline"></div> 
<input type="text" id="date_hidden" name="date added" class="no_show"/> 

아약스

$('#submit').on('click', function() { 
    var form = $('form'); 
    var date = $('#datepicker-inline').val(); 
    $('#date_hidden').val(date); 
    $.ajax('/api/service', { 
     type: 'POST', 
     contentType: 'application/json', 
     dataType: 'json', 
     data: form.serializeArray(), 
     success: function(response) { 
      console.log("Success!"); 
      $('#status').addClass('status-bar-success'); 
     }, 
     error: function() { 
      console.log('OH NOES!'); 
      console.log(form.serializeArray()); 
      console.log(date); 
      $('#status').addClass('status-bar-error'); 
     } 
    }); 
}); 
+0

아마도 '이름'이 없습니까? (편집 : 오, 지금 가지고있다) – Incognito

+0

@Kuma 나는 이름 필드를 추가했지만 여전히 운이 없다. Ajax 호출은 datepicker를 완전히 건너 뜁니다. – user3362859

+0

해당 div에서 생성 된 html을 검사하려고하면 양식이 입력되지 않은 요소를 제출하지 않습니다. – Incognito

답변

0

당신은 그 div 나란히 hidden 요소를 가질 수있다.

<div id="datepicker-inline" name="date"></div> 
<input type="hidden" id="datepicker-inline_hidden" name="date"/> 

와의

당신이 당신의 날짜 값이 hidden 요소로 제출 될 수 있도록

$('#submit').on('click', function() { 
    var form = $('form'); 
    var date = $('#datepicker-inline'); 
    $('#datepicker-inline_hidden').val(date); 
    //... your code 

할 수있는 제출하여.

+1

나는 그 결론에 이르렀다. 지금 테스트 중입니다 ... – user3362859

+0

결과를 신고 해주세요. 작동 해 주시기 바랍니다. – Incognito

+1

코드의 일부분을 업데이트해야했습니다. 위의 업데이트를 참조하십시오. 감사! – user3362859

관련 문제