フォームブリッジでjQuery UI Datepickerの利用について

お世話になっております。

掲題の件、フォームブリッジで文字列フォームにjQuery UI Datepickerを適用し、カレンダーの表示と値の入力までは確認できたのですが、

確認画面に移行した際に、値が消えてしまいます。

 

chromeのコンソールで内容を確認したところ、フォームブリッジでは値を送信する際にinputタグのvalueではなく、inputタグを囲んでいるdivタグのvalueを値として送信しているような動きになっておりました。

 

jQuery UI Datepickerで入力した値をdivタグのvalueに設定するにはどうすればいいのでしょうか?

現在設定しているコードは以下の通りです。

//============================================
// inputフォームにidを付与
//============================================
(function() {
“use strict”;

//フォームのDOMを作成した後のイベント
fb.events.form.mounted = [function (state) {

//datapickerを付与するinputフォームにclass、idを追加
$(‘input’).eq(3).attr(‘id’, ‘datapicker_input’);

return state;

}];

})();

 

//============================================
// datapicker
//============================================

$(function() {
$.datepicker.setDefaults( $.datepicker.regional[“ja”] );
$(‘#datapicker_input’).datepicker({
minDate: +0,
dateFormat: ‘yy年mm月dd日(D)’,
showButtonPanel: true,
beforeShow: function( input ) {
setTimeout(function() {
var buttonPane = $( input )
.datepicker( “widget” )
.find( “.ui-datepicker-buttonpane” );
var btn = $(‘<button class=“ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all” type=“button”>クリア</button>’);
btn
.unbind(“click”)
.bind(“click”, function () {
$.datepicker._clearDate( input );
});
btn.appendTo( buttonPane );
}, 1 );
}
});

$(‘.datapicker_grant’).datepicker(‘option’,‘beforeShowDay’,function(date){
var ret = [(date.getDay() != 0 && date.getDay() != 6)];
return ret;
});

});

 

以上、よろしくお願いいたします。

本件、解決いたしました。

もっとスマートなやり方があるかもしれませんが、以下のように対応いたしました。

 

①フォームブリッジのjsで、datapickerのonSelectオプションで選択した日付を"postMessage"で親ページに送信

②親ページ側で、受け取った値をデータを再度postMessage"で子ページ(iframe)に送信

③フォームブリッジのjsで、受け取った値を文字列フォームに入力

 

わざわざ親ページを経由せずに、子ページだけでデータのやり取りができればよかったのですが、

js間の値の受け渡し方法が分からなかったので上記の方法を採用しました。