Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (JAVASCRIPT) Календарь / 2 сообщений из 2, страница 1 из 1
09.11.2006, 21:09
    #34117581
Василий Теркин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(JAVASCRIPT) Календарь
Доброго здравия всем!
Возникла задача создать календарик на страничке, чтоб отображал содержимое новостной ленты из базы. В нете нашел исходник календарика, решил его переделать под DOM, чтоб при нажатии на кнопочки динамически менялись месяца, годы и т.д. Но где-то в коде (да и в моем понимании) вкрался баг. Вот код того, что получилось:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  <link rel="stylesheet" TYPE="text/css" href="calendar.css" > <!-- таблица стилей для календаря -->
</head>
<body>

<script src="calendar.js"></script> 

<script>
function DoIt(y,m,d)
{alert('Типа посылаю запрос к БД хде WHERE Date='+ d+'.'+(m+ 1 )+'.'+y+'    :-)');}


function Action(val)
{
   var now = new Date(); 
   var yr  = now.getFullYear ();
   var mth = now.getMonth();
   var day = now.getDate();
   var i,j;
   var txt;
   var EmptyArr = new Array( 0 ); 
   var Href_Arr = new Array(); 

   for(var i= 0 ; i<day; ++i) {Href_Arr[i]=i+ 1 ;}
   
   var Href_ArrPrev = new Array(); 
   j= 0 ; 
   for(var i= 1 ; i<= 30 ; i+= 3 ) {Href_ArrPrev[j]=i; j++;} 

   var tabbd = document.getElementById( "tablebody" );
   
   if(!tabbd ) 
   {
	   var table = document.getElementById( "table" );
	   var tbody = document.createElement( "tbody" );
	   tbody.id = "tablebody";
	   table.appendChild( tbody );
	   tabbd = document.getElementById( "tablebody" );
   }
   
   while( tabbd.hasChildNodes() ) 
   {
	   var tmp = tabbd.childNodes[  0  ];
	   tabbd.removeChild( tmp );
   }

   var tr = document.createElement( "tr" );   
   var td = document.createElement( "td" );
   
   var i=val;
   if (i<mth)
   {
    if(i==(mth- 1 )) txt = drawCal(yr, i,  0 ,  0 ,  0 , Href_ArrPrev, "DoIt")
    else           txt = drawCal(yr, i,  0 ,  0 ,  0 , null, "DoIt") 
   }
   else
   {
    if (i==mth)  txt = drawCal(yr, i,  0 ,  0 , day, Href_Arr, "DoIt")
    else         txt = drawCal(yr, i,  0 ,  0 ,  0 , EmptyArr, "DoIt") 
   };
   
   var tdtxt = document.createElement(txt);

   td.appendChild( tdtxt );
   tr.appendChild( td );
   tabbd.appendChild( tr );	
}


</script>



<form action="" method="get">
<table id="table" width="35%" border="1" cellspacing="2" cellpadding="6">
<tr>
   <td>
      <div align="center">	  
<select id="sel" name="basatable" onChange="javascript:Action(this.value)">

<?php
for ($i= 0 ;$i!= 12 ;$i++) 
   echo "<option value=\"".$i."\">".$i."</option>\n";
?>

</select>
<input type="submit" value="Выбрать">
</form>
     </div>
   </td>
</tr>
  <tbody id="tablebody" align="center"></tbody>
</table>
<SCRIPT language=JavaScript>
var selct = document.getElementById( "sel" );
Action(selct.value)</SCRIPT>
</body>
</html>

Результат - календарика нет.
Функция drawCal выдает html код в виде текста таблички нового месяца. Подозреваю, что ошибка здесь кроется в строке

Код: plaintext
1.
var tdtxt = document.createElement(txt);
но как поправить - не догоняю.
Благодарю за помощь и содействие!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
14.02.2008, 13:18
    #35132550
пропропро
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(JAVASCRIPT) Календарь
Здраствуй Дорогой!!!
createTextNode напиши!
и результат свой получи!
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / (JAVASCRIPT) Календарь / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]