2

カレンダーを追加した smarty テンプレートを初めて使用します。カレンダーの日付を他のページに渡したいだけです。

例:
ユーザーが日付をクリックすると、24-12-2012次のような形式の URL が必要になります:
`eventpost.php?ed=24-12-2012`

calendar.tpl ファイルがあります:

$('#calendar').fullCalendar({
    dayClick: function (date, allDay, jsEvent, view) {
        var myJsDate = date;
        var dispDate = myJsDate.getDate() + '-' + (myJsDate.getMonth() + 1) + '-' + myJsDate.getFullYear(); // 24-12-2012
        var det = dispDate
        $("#currentDate").val(dispDate);
        $('#offDayPopUp').dialog({
            autoOpen: true,
            modal: true,
            resizable: false,
            width: 300,
            height: 180,
            draggable: false
        });
        $('#calmonth_' + myJsDate.getMonth()).addClass('cal_month_active');
    },

HTML:

<div id="offDayPopUp" class="offDayDialog" title="Create Event,Commitment,Visiting Area.">
    <div class="CrateDiv">
        <div style="float:left; padding-right:10px;"><b>Date :</b></div>
        <div><input type="text" name="currentDate" id="currentDate" readonly="readonly" /></div>
        <ul>
            <li><a href="{$cfgRoot}/event/eventPost.php"><b>Create A New Event.</b></a></li>
            <li><a href="{$cfgRoot}/commitment/commitment.php"><b>Create A New Commitment.</b></a></li>
            <li><a href="{$cfgRoot}/area/areaPost.php"><b>Create A New Visiting Area.</b></a></li>
        </ul>
    </div>
</div>

その日付を JavaScript から次のような URL に渡したいだけです。

eventPost.php?ed=24-12-2012
commitment.php?ed=24-12-2012
areaPost.php?ed=24-12-2012
4

2 に答える 2

2

PHP を使用するデンマークの hasmi の可能性に従って、このように PHP を使用することをお勧めします。Javascript は、サーバー側で実行できるデータ操作に使用するためのものではありません。

//[...]
<li><a href="{$cfgRoot}/event/eventPost.php?ed={php}echo date('d-m-Y',mktime());{/php}"><b>Create A New Event.</b></a></li>
//[...]

php.net の mktime を参照して mktime-parameter を調整し、希望の日付に設定してください。

//アップデート

PHP を使用する方が理にかなっていますが、これは Javascript で行う方法です。

$('#calendar').fullCalendar({
    dayClick: function (date, allDay, jsEvent, view) {
        var myJsDate = date;
        var dispDate = myJsDate.getDate() + '-' + (myJsDate.getMonth() + 1) + '-' + myJsDate.getFullYear(); // 24-12-2012

        $(".CrateDiv > ul").find("li").each(function() {
           var atmhref = $("a",this).attr("href");
           $("a",this).attr("href",atmhref+"?ed="+dispDate);
        });
        //...
于 2012-12-14T08:47:45.327 に答える
1

この方法を試してみてください.onclickイベントを使用して、Javascript関数を使用して選択した日付を渡すことができます

<script>
 {literal}
 function golink(type) {
   var selecteddate = $("#currentDate").val();
   if(type=='event'){
       location.href="http://www.mysite.com/event/eventPost.php?ed="+selecteddate;
    }
   if(type=='commitment'){
       location.href="http://www.mysite.com/commitment/commitment.php?ed="+selecteddate;
    }
  if(type=='area'){
       location.href="http://www.mysite.com/area/areaPost.php?ed="+selecteddate;
    }
 }
  {/literal}
</script>


<div id="offDayPopUp" class="offDayDialog" title="Create Event,Commitment,Visiting Area.">
    <div class="CrateDiv">
        <div style="float:left; padding-right:10px;"><b>Date :</b></div>
        <div><input type="text" name="currentDate" id="currentDate" readonly="readonly" /></div>
        <ul>
            <li><a href="#" onclick="golink('event')"><b>Create A New Event.</b></a></li>
            <li><a href="#" onclick="golink('commitment')"><b>Create A New Commitment.</b></a></li>
            <li><a href="#" onclick="golink('area')"><b>Create A New Visiting Area.</b></a></li>
        </ul>
    </div>
</div>
于 2012-12-14T08:48:10.933 に答える