undefined помогите плиз
function calendar(m,y)
{ cal='<div>'+m+'</div>'; return cal; } возвращает undefined... при то что function calendar(m,y) { alert(m); } выводит два алерта, в первом переменная нормально высвечивается, а во втором undefined что нужно сделать? |
Цитата:
|
Как понять два раза вызываю?
HTML документ <html> <head> <title>Календарь</title> <link rel="stylesheet" href="style.CSS" type="text/css" media="screen" /> <script src="calendar.js"></script> </head> <body> <script language="javascript"> <!-- document.write(calendar()); //--> </script> </body> </html> JS документ function calendar(m,y){ cal='<div>'+m+'</div>'; return cal; } |
document.write(calendar()); // вызов функции без параметров … function calendar(m,y){ // m = undefined, y = undefined cal='<div>'+m+'</div>'; // <div>undefined</div> return cal; } |
не, чтото не то...
значения присваиваются сразу, var m=now.getMonth(); var y=now.getFullYear(); и потом по мере нажатия на кномки вперед назад меняется значение, оно передает значение в функцию, я вот не могу понять чего оно 2 раза вызывается, просто я совсем новичок в JS |
Не могу допереть....как сделать чтобы она не вызывалась второй раз(((
помогите пожалуйста |
Цитата:
<script language="javascript"> <!-- document.write(calendar()); //--> </script> подразумевалось закомментировать код, то надо так: <script language="javascript"> // document.write(calendar()); </script> |
micscr, эти HTML-комментарии в JavaScript-коде из далекого прошлого, когда браузеры, неподдерживающие скрипты, отображали содержимое между незнакомыми им тегами <script>…</script>.
|
Цитата:
Я понял, что вот сюда не передается аргумент document.write(calendar());. Вот так, например, работает document.write(calendar(3, 2010));. Но, естественно, не переключаются месяцы. Могу целиком привести код. |
javascript файл
var now=new Date; var sm=now.getMonth(); var sy=now.getFullYear(); var m=now.getMonth(); var y=now.getFullYear(); var month=new Array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"); var day=new Array("Вс","Пн","Вт","Ср","Чт","Пт","Сб"); function calendar(cm,year){ td=now.getDate();//сегодняшнее число s=new Date(); s.setDate(1); s.setFullYear(year); s.setMonth(cm); sd=s.getDay();//старт feb=((year%4)==0)?29:28;//высокосный год nDay=new Array('31',feb,'31','30','31','30','31','31','30','31','30','31'); result='<table id="c" cellpadding="0" cellspacing="0"><tr><td onclick="back()"><img src="img/l.gif"></td><td colspan="5">'+month[cm]+', '+year+'</td><td onclick="forward()"><img src="img/r.gif"></td></tr><tr>'; for(var i=0;i<7;i++){ result+='<td>'+day[i]+'</td>'; } result+='</tr></table>' return result; } calendar(m,y); function forward(){ m+=1; if(m>=12){ m=0; y++; } calendar(m,y); } function back(){ m-=1; if(m<0){ m=11; y--; } calendar(m,y); } html файл <html> <head> <title>Календарь</title> <link rel="stylesheet" href="style.CSS" type="text/css" media="screen" /> <script src="calendar.js"></script> </head> <body> <script language="javascript"> <!-- document.write(calendar()); //--> </script> </body> </html> |
Часовой пояс GMT +3, время: 22:03. |