有可能从DIV到其他页面获得时间吗?如何去做


Is it possible to get the time from DIV to other page? How?

<?php $date = date('m-d-Y'); ?>
<form class="signin" method="POST" action="2ndpage.php">
<h1>Validate</h1>
<input name="date" type="text" autocomplete="on" id="calendar" value="<?php echo $date ?>" />
<div id="rtime"></div>
<button type="submit">Next page</button>

第二页:

$d = $_POST['date'];
$t = $_POST['mytime'];

$d输出的是我想要的日期,但$t返回的是未定义的索引。

"rtime"是一个运行时间(Javascript),但这不是问题。问题是如何获得div("rtime")的值将显示到下一页,我可以使用。更有可能说,我想做一个用户交易的报告,并写上日期和时间。

困惑。请帮助。

添加一个隐藏的输入字段。

<form class="signin" method="POST" action="2ndpage.php" onsubmit="update_time()">
<h1>Validate</h1>
<input name="date" type="text" autocomplete="on" id="calendar" value="<?php echo $date ?>" />
<input name="mytime" type="hidden" id="mytime">

然后在Javascript中,onsubmit处理程序可以从rtime DIV复制到这个字段。

function update_time() {
    document.getElementById('mytime').value = document.getElementById('rtime').innerHTML;
}

看起来好像你缺少一个叫做mytimeinput element

<?php
  $date = date('m-d-Y');
  $time = date('H:i');
?>
<input name="date" type="text" autocomplete="on" id="calendar" value="<?php echo $date ?>" />
<input name="mytime" type="text" autocomplete="on" id="calendar" value="<?php echo $time ?>" />

如果你想要的值是由JavaScript生成的,你可以:

让JavaScript将该值插入到表单中的隐藏输入

或者使用Ajax。

$t在2ndpage.php是未定义的,因为(在您的第一页)没有<input>字段的名称mytime

$d值被检索是因为:

$d = $_POST['date'];

匹配这个(注意name=参数):

<input name="date" value="<?php echo $date ?>" />

要显示$t,您需要这样做(再次注意name=参数):

<input name="mytime" value="time_goes_here">

当一个表单被post到另一个PHP文件时,每个name成为一个变量的名称,并且存储在元素中的value成为另一边变量的值。

您可以通过$_POST:

检索这些"变量"
  • 您必须在第二个PHP文件中创建一个NEW变量(通常使用与第一页完全相同的名称-即元素的name参数)

  • 变量的值通过$_POST命令检索,引用第1页的name:

    $thetime = $_POST['mytime'];


要通过该DIV传递一个值,可以在提交表单之前使用jQuery在DIV中插入一个带有name<input>元素。

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {
                $('button').click(function() {
                    //Next line adds a hidden field `mytime` with text value
                    //$('#rtime').html('<input name="mytime" value="Two oclock">');
                    //Below adds hidden field `mytime` with current time string
                    var d = new Date();
                    var h = d.getHours();
                    var m = d.getMinutes();
                    var s = d.getSeconds();
                    var strTime = h+':'+m+':'+s;
                    //alert(strTime);
                    $('#rtime').html('<input name="mytime" value="'+strTime+'">');
                    //return false;
                });
            }); //END $(document).ready()
        </script>
    </head>
<body>
    <?php $date = date('m-d-Y'); ?>
    <form class="signin" method="POST" action="test108b.php">
    <h1>Validate</h1>
    <input name="date" type="text" id="calendar" value="<?php echo $date ?>" />
    <div id="rtime" name="mytime"></div>
    <button type="submit">Next page</button>
</body>
</html>

可以添加名称为mytime的隐藏输入

<input id="mytime" name="mytime" type="hidden" />

现在你的JavaScript计时器必须在输入

中设置值
$("#mytime").val(actual_time);