jq日曆插件怎麼與自己寫的按鈕鏈接
你好!
提問的這個日期控件是哪個控件?不同日期控件使用的方法或屬性都不相同,所以以後提問最好詳細一些,這樣才能更快的得到反饋!
我常用的jquery日期控件有jquery-ui的datepicker和easyui的datebox,
datepicker中可以通過屬性來將選擇日期輸出到指定元素上,比如:
//引入各路腳本、樣式 ------->>>;被省略啦······
//readonly="readonly" 這個屬性將日期控件設置為只讀
easyui的datebox,雖然相對較複雜,但想要實現你所描述的功能也是可以的,無非是對其中的某些class進行操作,而這些需要一點時間和體力··
2.一個日曆控件的調用方法先把裏的那段代碼保存成calendar.htm文件。
然後在別的要調用日曆的文件裏面使用calendar.htm.譬如input框可以這麼寫:
<input type="text" readonly="readonly" onclick="this.value = showModalDialog('calendar.htm', 'dd日mm月yyyy年' ,'dialogWidth:286px;dialogHeight:221px;status:no;help:no;');" />
實現的效果是:在文本框上面點擊,彈出日曆框,雙擊一個日期,則當前日期自動填入到文本框中。
showModalDialog參數裏面的'dd日mm月yyyy年'是返回到文本框裏面的日期格式,可以用別的代替,如'yyyy-mm-dd'.
如果要實現點擊其中的一個日期的時候,他能鏈接到 diray.asp?sj=080402 這樣的鏈接的話,要修改calendar.htm的代碼,
找到這段代碼:
window.document.attachEvent("ondblclick" ,
function()
{
var obj = window.event.srcElement;
if(obj.tagName.toLowerCase() == "span" && obj.parentNode.className.replace(/Ctable/ig,"star") == "star" )
{
var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
window.close();
}
}
);
把
var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
修改為
window.returnValue = obj.id.split('-')[0].slice(2)+('0'+obj.id.split('-')[1]).slice(-2)+('0'+obj.id.split('-')[2]).slice(-2)
然後在調用的頁面上面做一個連接:<a href="#" onclick="location='diray.asp?sj='+showModalDialog('calendar.htm', 'dd日mm月yyyy年' ,'dialogWidth:286px;dialogHeight:221px;status:no;help:no;');return false;">;查看日誌</a>
如果要把日曆控件直接插入到頁面中,而不是彈出窗口的話,則修改下面的代碼
var mydate = new dataObj(obj.id.split("-")[0] , obj.id.split("-")[1] , obj.id.split("-")[2] );
window.returnValue = mydate.getDateString(userFormatString)
window.close();
為:
window.location='diray.asp?sj='+obj.id.split('-')[0].slice(2)+('0'+obj.id.split('-')[1]).slice(-2)+('0'+obj.id.split('-')[2]).slice(-2);