页面自动提交

时间:2016-11-12 15:22:09

标签: javascript jquery asp.net

*如果用户没有点击按钮,我希望在时间间隔后提交论文。我使用meta但这不能解决我的问题我想在用户输入时将自动重定向的值设置为另一个页面但在此元数据中标签我不给变量.... 另一个问题是,如果用户刷新页面,那么时间再次从0开始,这是一个很大的问题,我如何解决这个PLZ告诉我早期

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="autosubmitpaper.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <meta http-equiv="Refresh" content="10;url=WebForm2.aspx" />
</head>
<body>
    <form id="form1" action="WebForm2.aspx" runat="server">
    <div>
        <label>Give Answer</label>
   <input type="text" id="text1" />
        <label>Give Answer</label>
    <input type="text" id="text2" />
        <asp:Label ID="Label1" runat="server" Text="Label">paper submit after 10 sec</asp:Label>
   <asp:button ID="button" OnClick="button_Click" runat="server" text="Button" />     
         </div>
    </form>
    <script>
    </script>
</body>
</html>

* 谦卑地请求,如果有任何其他方法...请解决我的问题

4 个答案:

答案 0 :(得分:0)

使用间隔计时器提交表单

setTimeout(function(){
   $('#form1').submit();
}, 30000); // 30 seconds

答案 1 :(得分:0)

您可以使用内置的asp.net Control Timer。有关Microsoft Site

的更多信息
<asp:Timer ID="Timer1" runat="server" Interval="10000" OnTick="Timer1_Tick"></asp:Timer>

OnTick执行正常的PostBack,您可以在后面的代码中执行常规操作。

  

Interval以毫秒为单位

答案 2 :(得分:0)

您可以使用window.setTimeout(请参阅here)在指定的毫秒数后执行JavaScript函数。在函数中,您可以提交表单或只是重定向到另一页。

如果您希望超时超过页面刷新,那么您需要在用户的会话中存储一些信息,并在刷新页面时使用它来计算剩余超时。

答案 3 :(得分:0)

$().ready(function () {
        var initialDate = new Date();
       var x = setInterval(function () {
            var currentDate = new Date();
            var variation = (currentDate - initialDate) + parseInt(sessionStorage.getItem('key') == null ? 0 : sessionStorage.getItem('key'));
            console.log(variation);
            sessionStorage.setItem('key', variation);
            if (variation > 60000) {
                alert("I am done");
                clearInterval(x);
                sessionStorage.setItem('key', 0);
            }

        }, 1000);


    });

试试这个(结束时间为6秒,如果你在第3秒刷新它将从第3秒计数到6秒)。