前提・実現したいこと
(例)JavaScript・HTMLでweb画面を作っています。
Datepickerでオブジェクトに日付を入力できる機能を実装中です。
画面には日付を入力するオブジェクト(以下オブジェクトA)と、
日付を入力するオブジェクトを追加するボタンがあります。(JavaScriptでオブジェクトAを複製)
初期状態で表示しているオブジェクトAにはDatePickerが実装できており正常に動くのですが
追加ボタンでしたオブジェクトには横にカレンダーのマークは表示されるのですが、クリックしてもカレンダーが出てきません。
google検証ウィンドウで確認したところ、オブジェクトAを複製しているため要素IDも同じになっていました。
方法としては、
①追加したオブジェクトのみ要素IDを上書きしてDatePickerを設定する
②すべてのオブジェクトのDatePickerの紐づけを解除し、再設定する
と思うのですがやり方が分かりません。
オブジェクトAも追加したオブジェクトもDatePickerでカレンダーから日付を選択できるようにしたいです。
お手数ですが、よろしくお願いします。
発生している問題・エラーメッセージ
該当のソースコード
//jS function setDatePickerSelector($selector){ $selector.each(function(){ $o = $(this); $o.datepicker({ buttonText:'カレンダー表示',dateFormat:'yy-mm-dd' }); $o.datepicker("option", "showOn", 'button'); $o.datepicker("option", "buttonImageOnly", true); $o.datepicker("option", "buttonImage", 'images/calendar.png'); }); } function clearDatePickerSelector($selector){ alert("clear"); $selector.each(function(){ $.removeData(this); }); } $(function(){ //カレンダー設定 setDatePickerSelector($("input.test_date")); //AddDel実装 var adddel = new AddDelManager("test_List"); adddel.onAddItem = function ($row, idx, addByBtnFlg) { //カレンダー設定クリア clearDatePickerSelector($("input.tax_date")); }; //HTML <div id="container"> <div class = "wrapper"> <ul> <li class="flex calendar group"> <p class="lbl">日付</p> <div id ="test_List"> <div class ="test_row"> <input class="test_date" type="text" name="test_date[]" placeholder="日付" value="" > </div> </div> </li> </ul> </div> </div>
試したこと
https://ameblo.jp/naru-dino/entry-11718175108.html?frm=theme
https://ameblo.jp/naru-dino/entry-11934588143.html?frm=theme
上記URLを参考に、
追加したオブジェクトを取得して、setDatePickerSelectorを行う方法を試したのですが、
動作せず。
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー