2013-08-22 131 views
2

我需要在jQuery UI Datepicker中添加自定義按鈕,並且當用戶單擊該按鈕時,設置一個值以輸入(一串文本)並關閉彈出窗口。這可能嗎?jQuery UI Datepicker - 自定義按鈕 - 自定義文本

小提琴例如:http://jsfiddle.net/7Wygg/

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">Custom</button>'); 
     btn.unbind("click") 
     .bind("click", function() { 
      //$.datepicker._clearDate(input); 
      alert('custom text'); 
     }); 

     btn.appendTo(buttonPane); 

    }, 1); 
} 

謝謝。

回答

7

修改答案,由於評論

你的意思是這樣的:http://jsfiddle.net/7Wygg/10/

我只是說

$(input).datepicker("hide"); 
$(input).val("custom text"); 
+0

是的,它是完美的。 但我有很多datepickers在他們的同一頁。 所以我不能使用$(「。datepicker」)。 是否可能更改$(「。datepicker」)並設置$(this)? – FeKuLa

+0

@FeKuLa我修改了我的答案和小提琴。這現在應該適合你。 – Rob

+0

不錯的作品Rob。謝謝。 – FeKuLa

2

設置演示HERE,並在這裏日期選擇器,我們可以設置日期狀的圖案沒有任何其他

$(function() { 
$(".datepicker").datepicker({ 
    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">Custom</button>'); 
      btn.unbind("click") 
      .bind("click", function() { 
       //$.datepicker._clearDate(input); 
       alert('custom text'); 
       $(".datepicker").datepicker("hide"); 
       $(".datepicker").datepicker("setDate", "19/12/2003");// here in cutom we can set date like pattern not any other 

      }); 

      btn.appendTo(buttonPane); 

     }, 1); 
    } 
}); 
}); 
+0

我需要在日期選擇器中設置文本 – FeKuLa

+0

你不能設置文本,但在任何其他文本框中,你可以設置它是日期選擇器的性質親愛的 –

+0

$ (「.datepicker」)。val(「自定義文本」);作品!但我需要使用$這個,因爲我有很多日期選擇器 – FeKuLa