php - smarty 模板 - 在 url 中传递 javascript 变量

标签 php javascript smarty fullcalendar

我是 smarty 模板的新手 我已经添加了日历,我只想将日历的日期传递到其他页面。

例如:
当用户点击 24-12-2012 日期时,我需要一个如下格式的网址:
`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

最佳答案

继danish hasmi使用PHP的可能性之后,更好地这样使用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>
//[...]

参见mktime on php.net调整 mktime 参数并将其设置为您想要的日期。

//更新

尽管使用 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);
        });
        //...

关于php - smarty 模板 - 在 url 中传递 javascript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13875048/

相关文章:

php - 隐藏/保护 php-engine 配置文件的最佳实践?

php - 上传的文件应该重命名吗?

php - Sublime Text 3 : how to see the sub-array content in the Xdebug context 中的 Xdebug

javascript - jQuery |我可以根据图像的平均颜色运行特定的代码吗?

javascript - jQuery .toogleClass 函数用于切换元素类并在事件期间执行某些操作

php - Smarty inside javascript innerHTML

php生成json数组然后javascript将其显示出来

javascript - 如何克隆 dom 的元素或 block ?

php - Laravel 5.1,在 View 文件中使用变量名

php - CakePHP 2.3 的模板引擎