日期:2014-05-17  浏览次数:20510 次

高手进!关于客户端调用服务器端函数的问题
我先描述一下情况:首先这是一个在线考试的页面,页面的内容有:用户的姓名,考题(考题是从数据库中读取),还有一个提交按钮和一个计时的小textbox;在页面上我用客户端脚本实现了从0开始计时,当计时为90分钟时候我用想用if判断,跳转?执行服务器断的提交函数;我只有一个页面名称为usertest.aspx;提交函数在usertest.aspx.cs中,我应该怎样实现啊?
我先给出页面中计时的script脚本如下:
*****************************************************************************************************
  <script language="javascript" type="text/javascript">
<!--
  var ap_name = navigator.appName;
  var ap_vinfo = navigator.appVersion;
  var ap_ver = parseFloat(ap_vinfo.substring(0, ap_vinfo.indexOf('(')));
  var time_start = new Date();
  var clock_start = time_start.getTime();
  var dl_ok = false;
   
   
  var xmlhttp;

  
  

  function init() {
  if (ap_name == "Netscape" && ap_ver >= 3.0)
  dl_ok = true;
  return true;
  }
  function get_time_spent() {
  var time_now = new Date();
  return ((time_now.getTime() - clock_start) / 1000);
  }
  function show_secs() // show the time user spent on the side
  {
  var i_total_secs = Math.round(get_time_spent());
  var i_secs_spent = i_total_secs % 60;
  var i_mins_spent = Math.round((i_total_secs - 30) / 60);
  var s_secs_spent = "" + ((i_secs_spent > 9) ? i_secs_spent : "0" + i_secs_spent);
  var s_mins_spent = "" + ((i_mins_spent > 9) ? i_mins_spent : "0" + i_mins_spent);
  document.form1.time_spent.value = s_mins_spent + ":" + s_secs_spent;
  window.setTimeout('show_secs()', 1000);
  }

  window.onload = function() {
  test();
  }
  var sec = 0;
  var miu = 0;
  var hour = 0;
  var kj = 0;
  function test() {
  var time = document.getElementById("<%=timeBox.ClientID %>");
  if (time.value == "") {
  sec += 1;
  if (sec == 60) {
  miu += 1;
  sec = 0;
  }
  if (miu == 60) {
  hour += 1;
  miu = 0;
  }
  time.value = hour + ":" + miu + ":" + sec;
  } else {
  var ts = time.value.split(':');
  sec = parseInt(ts[2]);
  miu = parseInt(ts[1]);
  hour = parseInt(ts[0]);

  sec += 1;
  if (sec == 60) {
  miu += 1;
  sec = 0;
  }
  if (miu == 60) {
  hour += 1;
  miu = 0;
  }
  time.value = hour + ":" + miu + ":" + sec;


  }



  window.setTimeout("test()", 1000);
// if(hour*60+miu>=5) {
// <% 应该是在这里调用后台的函数吧,后台是newmethod()%>;}


  }
*********************************************************************************