2012-07-03 2 views
-1

javascript에서 현재 날짜를 자동 선택하는 방법은 무엇입니까? 나는 현재 date.Please 나에게 안내 자동 선택하는 방법을 잘 모릅니다 달력을 표시하는 달력은 .js를 사용하지만,하고캘린더 컨트롤에서 현재 날짜를 자동 선택하는 방법은 무엇입니까?

편집 : Calender.js

var oldLink = null; 
// code to change the active stylesheet 
function setActiveStyleSheet(link, title) { 
    var i, a, main; 
    for(i=0; (a = document.getElementsByTagName("link")[i]); i++) { 
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) { 
     a.disabled = true; 
     if(a.getAttribute("title") == title) a.disabled = false; 
    } 
    } 
    if (oldLink) oldLink.style.fontWeight = 'normal'; 
    oldLink = link; 
    link.style.fontWeight = 'bold'; 
    return false; 
} 

// This function gets called when the end-user clicks on some date. 
function selected(cal, date) { 
    cal.sel.value = date; 
    cal.sel.focus(); 
    // just update the date in the input field. 
// if ((cal.sel.id).substr(0,3) == "row" || cal.sel.id == "row3") 

    cal.callCloseHandler(); 
} 

function closeHandler(cal) { 
    cal.hide();      // hide the calendar 
} 

function showCalendar(id, format) { 
    var el = document.getElementById(id); 
    if (calendar != null) { 
    // we already have some calendar created 
    calendar.hide();  
    // so we hide it first. 
    } else { 
    // first-time call, create the calendar. 
    var cal = new Calendar(false, null, selected, closeHandler); 
    // uncomment the following line to hide the week numbers 
    // cal.weekNumbers = false; 
    calendar = cal;     // remember it in the global var 
    cal.setRange(1900, 2070);  // min/max year allowed. 
    cal.create(); 
    } 
    calendar.setDateFormat(format); // set the specified date format 
    calendar.parseDate(el.value);  // try to parse the text in field 
    calendar.sel = el;     // inform it what input field we use 
    calendar.showAtElement(el);  // show the calendar below it 

    return false; 
} 

var MINUTE = 60 * 1000; 
var HOUR = 60 * MINUTE; 
var DAY = 24 * HOUR; 
var WEEK = 7 * DAY; 


function isDisabled(date) { 
    var today = new Date(); 
    return (Math.abs(date.getTime() - today.getTime())/DAY) > 10; 
} 

function flatSelected(cal, date) { 
    var el = document.getElementById("preview"); 
    el.innerHTML = date; 
} 

function showFlatCalendar() { 
    var parent = document.getElementById("display"); 

    // construct a calendar giving only the "selected" handler. 
    var cal = new Calendar(false, null, flatSelected); 

    // hide week numbers 
    cal.weekNumbers = false; 

    // We want some dates to be disabled; see function isDisabled above 
    cal.setDisabledHandler(isDisabled); 
    cal.setDateFormat("DD, M d"); 

    cal.create(parent); 

    cal.show(); 
} 

function compareDate(date1, date2) 
{ 
    var strErrMsg = ""; 

    tokens = date1.split("-"); 
    dd = tokens[0]; 
    mm = tokens[1]; 
     mm=mm-1; 
    yyyy = tokens[2]; 
     dt1 = new Date(yyyy,mm,dd); 

    tokens1 = date2.split("-"); 
    dd = tokens1[0]; 
    mm = tokens1[1]; 
     mm=mm-1; 
    yyyy = tokens1[2]; 
     dt2 = new Date(yyyy,mm,dd); 

    if(dt1.valueOf() <= dt2.valueOf()) 

     alert(dt1); 
     alert(dt2); 

     var difInDays = (parseInt) ((dt2.getTime() - dt1.getTime())/(1000*60*60*24)); 
     alert(difInDays); 

     if(dt1.valueOf() <= dt2.valueOf()) 
    { 
      return strErrMsg; 
     } 
    else 
     { 
      strErrMsg = "Cannot be Greater than "; 
      return strErrMsg; 
     } 

     return strErrMsg; 
} 

function nextDateAfterThreeDays(date1) 
    { 
     tokens = date1.split("-"); 

     dd = tokens[0]; 
     mm = parseInt(tokens[1]-1); 
     yyyy = tokens[2]; 

     dt1 = new Date(yyyy,mm,dd); 

     var time=dt1.getTime(); 
     time=time; 
     dt1.setTime(time); 

     var newDD = dt1.getDate()+3; 
     var newMM = dt1.getMonth()+1; 
     var newYY = dt1.getFullYear(); 

     if(newDD<10) 
      newDD="0"+newDD; 

     if(newMM<10) 
      newMM="0"+newMM; 

     date1=newDD+"-"+newMM+"-"+dt1.getFullYear(); 
     return date1; 
    } 


function compareBackDate(date1, date2) 
{ 
     var strErrMsg = ""; 

     tokens = date1.split("-"); 

    dd = tokens[0]; 
    mm = parseInt(tokens[1])-1; 
    yyyy = tokens[2]; 

    dt1 = new Date(yyyy,mm,dd); 

    tokens = date2.split("-"); 

    dd = tokens[0]; 
    mm = parseInt(tokens[1])-1; 
    yyyy = tokens[2]; 

    dt2 = new Date(yyyy,mm,dd); 

     var difInDays = (parseInt) ((dt1.getTime() - dt2.getTime())/(1000*60*60*24)); 
     alert(""+difInDays); 

     if(difInDays > 15) 
     { 
      strErrMsg = " Should not be earlier six month than "; 

     } 

     return strErrMsg; 
} 

function convertDate(date1) 
{ 

    var tokens1; 
    var ddd; 
    var mmm=""; 
    var mmm1; 
    var yyyyy; 
    var strErrMsg=""; 

    tokens1 = date1.split("-"); 
    ddd = tokens1[0]; 
    mmm = tokens1[1]; 
    yyyyy = tokens1[2]; 


    if(mmm=="Jan") 
    { 
     mmm1=01; 
    } 
    if(mmm=="Feb") 
    { 
     mmm1=02; 
    } 
    if(mmm=="Mar") 
    { 
     mmm1=03; 
    } 
    if(mmm=="Apr") 
    { 
     mmm1=04; 
    } 
    if(mmm=="May") 
    { 
     mmm1=05; 
    } 
    if(mmm=="Jun") 
    { 
     mmm1=06; 
    } 
    if(mmm=="Jul") 
    { 
     mmm1=07; 
    } 
    if(mmm=="Aug") 
    { 
     mmm1=08; 
    } 
    if(mmm=="Sep") 
    { 
     mmm1=09; 
    } 
    if(mmm=="Oct") 
    { 
     mmm1=10; 
    } 
    if(mmm=="Nov") 
    { 
     mmm1=11; 
    } 
    if(mmm=="Dec") 
    { 
     mmm1=12; 
    } 

    strErrMsg=ddd+"-"+mmm1+"-"+yyyyy; 

    return strErrMsg; 


} 

function isComboSelected(objComboName) 
{ 
    var strErrMsg = ""; 
    var objForm = document.getElementsByTagName("form")[0]; 
    var objCombo = document.getElementsByName(objComboName)[0]; 

    if(objCombo.options[0].selected == true) 
    { 
     strErrMsg = "Please Select Value."; 
     return strErrMsg; 
    } 

    return strErrMsg; 
} 

Edit2가 :

내 코드

<script type="text/javascript"> 
function submitFun() 
{ 
    var frm=document.forms[0]; 
    var fromDate=frm.lsReqRecDate.value; 
    //var toDate=frm.toDate.value; 
    var date1=convertDate(fromDate); 
    //var date2=convertDate(toDate); 


    var mm;var dd;var yyyy; 
    var mm1;var dd1;var yyyy1; 
    var d1=date1; 

    var txtAppFrmDate=date1; 
     if(d1.indexOf("-")!=-1) 
     { 
     dd=d1.substring(0,d1.indexOf("-")); 
     mm=d1.substring(d1.indexOf("-")+1,d1.lastIndexOf("-")); 
     yyyy=d1.substring(d1.lastIndexOf("-")+1,d1.length); 

     } 
     start_Date=new Date(yyyy,mm-1,dd); 


     var fDate = txtAppFrmDate.split("-"); 
    // var tDate = txtAppToDate.split("-"); 

     var one_day=1000*60*60*24; 
     var fdt = new Date((fDate[2]),(fDate[1]-1),(fDate[0])); 

    frm.submit(); 
} 
</script> 

<html:form action="/exceptionNBReport.do" styleId="frmDatewise"> 

<TABLE class="ReportFilter"> 
    <THEAD> 
     <TR> 
      <TD colspan="2">NB Report Search</TD> 
     </TR> 
    </THEAD> 
</TABLE> 
<br><br> 
<TABLE class="ReportFilter"> 

    <TR> 
     <TD class="lbl" align="left">Last requirement received date</TD> 
     <TD> 
      <html:text property="lsReqRecDate" style="width:170;" readonly="readonly"/> 
      <input type="reset" value="..." onclick="return showCalendar('lsReqRecDate','dd-MM-y');" name="reset"/> 
     </TD> 
    </TR> 

    <TR> 
     <TD colspan="2" align="center"> 
      <html:button property="search" value="Submit" onclick="submitFun()"/> 
     </TD> 
    </TR> 
</TABLE> 
</html:form> 
+0

구체적으로 말하자면 인터넷에 얼마나 많은 캘린더 스크립트가 있다고 생각하십니까? – epoch

+0

calender.js의 버전 – shareef

+0

업데이트 된 게시물을 참조하십시오. – happy

답변

0

Calendar의 소스 코드에서 원하는 날짜를 Calendar() 구문에 전달해야합니다. 또는 생성자에 대한 두 번째 인수로. 자세한 내용은 16 및 588 줄을보십시오.

관련 문제