2011-08-09 1 views
0

これはカレンダースクリプトです。私たちはどのように日付をクリックして印刷できますか?

ここで特定の日付をクリックすると警告が表示されます。

しかし、この日付をonclickでどのように印刷できますか?

<?php 
/* call calendar function */ 
function fncalendar($month,$year){ 
/* Outer Table for calendar */ 
$calendar = '<table cellpadding="0" cellspacing="0" class="calendar">'; 
/* Calendar Days in heading */ 
$headings = array('Sun','Mon','Tue','Wed','Thu','Fri','Sat'); 
$calendar.= '<tr class="calendar-row"><td class="calendar-day-head">'.implode('</td><td class="calendar-day-head">',$headings).'</td></tr>'; 
/* get and set primary setup from input :: put it in array */ 
$running_day = date('w',mktime(0,0,0,$month,1,$year)); 
$days_in_month = date('t',mktime(0,0,0,$month,1,$year)); 
$days_in_this_week = 1; 
$day_counter = 0; 
$dates_array = array(); 

/* row for single week */ 
$calendar.= '<tr class="calendar-row">'; 
for($x = 0; $x < $running_day; $x++) { 
    $calendar.= '<td class="calendar-day-np"> </td>'; 
    $days_in_this_week++; 
} 

for($list_day = 1; $list_day <= $days_in_month; $list_day++) { 
    $calendar.= '<td class="calendar-day">'; 
    $createdDatei = $list_day . '/' . $month . '/' . $year; 
    $calendar .= '<a id="'.$createdDatei.'" class="done"  onclick="alert(this.id);" href="javascript:;"><em id="e'.$createdDatei.'">10</em>' .$list_day. '</a>'; 
    $calendar.= '</td>'; 
    if($running_day == 6) { 
     $calendar.= '</tr>'; 
     if(($day_counter+1) != $days_in_month) { 
      $calendar.= '<tr class="calendar-row">'; 
     } 
     $running_day = -1; 
     $days_in_this_week = 0; 
    } 
    $days_in_this_week++; $running_day++; $day_counter++; 
} 

if($days_in_this_week < 8) { 
    for($x = 1; $x <= (8 - $days_in_this_week); $x++) { 
     $calendar.= '<td class="calendar-day-np"> </td>'; 
    } 
} 

$calendar.= '</tr>'; 
$calendar.= '</table>'; 
/* all done, return final result */ 
return $calendar; 
} 
/* sample usages */ 
echo '<h2>July 2011</h2>'; 
echo fncalendar(7,2011); 

echo '<h2>August 2011</h2>'; 
echo fncalendar(8,2011); 
?> 

<style type="text/css"> 
/* Css style applying after creating calendar */ 
/* main */ 
body { font-family: Airal, sans-serif; } 
table.calendar { border-left:1px solid #ddd; font-family: Arial, sans-serif; } 
tr.calendar-row { } 
td.calendar-day { position: relative; font-size:11px; } 
* html div.calendar-day { height:80px; } 
td.calendar-day:hover { background:#eceff5; } 
td.calendar-day-np { background:#eee; min-height:80px; } 
* html div.calendar-day-np { height:80px; } 
td.calendar-day-head { background:#ccc; font-weight:bold; text-align:center; width:120px; padding:5px; border-bottom:1px solid #ddd; border-top:1px solid #ddd; border-right:1px solid #ddd; } 
div.day-number { background:#999; padding:0px; color:#fff; font-weight:bold; float:right; margin:-5px -5px 0 0; width:20px; text-align:center; } 
/* shared */ 
td.calendar-day, td.calendar-day-np { width:120px; border-bottom:1px solid #ddd; border-right:1px solid #ddd; } 
a { display: block;  text-align: right; font-size: 22px; padding: 5px 10px; text-decoration: none; font-weight: bold; color: blue; line-height: 40px; } 
a.done { background: #DCFFDB url(http://images.yincsolutions.com/checkgr.png) no-repeat 20% 80%; } 
a.current { background: #40a9da; -moz-box-shadow: inset 0 0px 5px rgba(0, 0, 0, 0.7); -webkit-box-shadow: inset 0 0px 5px rgba(0, 0, 0, 0.7); box-shadow: inset 0 0px 5px rgba(0, 0, 0, 0.7); } 
a:active { color: red; } 
a em { float: left; font-size: 17px; color: #aaa; font-weight: normal; margin: -10px 0px 0px -5px; } 
</style> 
+1

あなたの質問を書き直し、質問本体に詳細な情報を入力してください。あなたの質問が今立っているように、それはおそらく答えを受け取らないでしょう。 – OverZealous

+0

各データフィールドに任意のクラスがありますか? – thecodeparadox

+0

コードを2行か3行に抽象化してください。 – Quasdunk

答えて

0

あなたの平均をHTML要素に「印刷する」と思っています。

プレースホルダ要素作成してみてください:<p id="foo">Placeholder</p>をして、JavaScriptを使用して、その内容を上書き:あなたのリンクコードで

function setText(text) { 
    document.getElementById("foo").innerHTML = text; 
} 

alert()の代わりに、入れ:

onclick="setText(this.id);" 

また、ということに注意してくださいPHPとHTML/CSSを混在させるのは貧弱です。私は、ロジックを異なるクラスに分け、情報を表示するためのテンプレートを使うことを強くお勧めします。

+0

thanxたくさんのkbok ........ – user885450

関連する問題