2011-02-28 38 views
0

我在我的web应用程序Timer1和enabled = false上有一个计时器。我想用jquery来启动我的计时器。我认为$("Timer1").enableSelection('True');会工作,但它似乎没有工作。使用jquery触发我的计时器

此处有任何建议吗?

谢谢你们!

我的jQuery代码:

var lastupdate; 
     $(function() { 
      $.ajaxSetup({ 
       type: "POST", 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       data: "{}", 
       error: function (a, b, c) { 
        try { 
         var err = (JSON.parse(a.responseText)).Message; 
         alert(err); 
        } 
        catch (ero) { 
         alert(a.responseText); 
        } 
       } 
      }); 

      // updateSettings(); 
      $("#refreshBaan").click(function() { 
       $.ajax({ 
        url: "Default.aspx/refreshBaan", 
        success: function (msg) { 
         $("#lastBaanUpdate").html(""); 
         $("#lastBaanUpdate").progressbar({ value: 0 }); 
         $("#refreshBaan").attr("disabled", "disabled"); 
         //** 
         $(function() { 
          $("Timer1").enableSelection('True'); 
          $("#progressbar").progressbar({ value: 0 }); 
          setTimeout(updateProgress, 200); 
         }); 
         function updateProgress() { 
          var progress; 
          progress = $("#progressbar") 
    .progressbar("option", "value"); 
          if (progress < 100) { 
           $("#progressbar") 
     .progressbar("option", "value", progress + 2); 
           setTimeout(updateProgress, 200); 


          } 
         }` 

我的C#:

<asp:Timer ID="Timer1" runat="server" Interval="17000" ontick="Timer1_Tick" Enabled="False" />

+0

您可以更新您的问题提供多一点,你正在使用的代码?不知道你在哪里,很难提供帮助。 – McHerbie 2011-02-28 19:57:58

+0

我冒昧地“提高”你的问题,使其更具描述性和良好格式化。我@McHerbie同意,因为它是的,问题是太模糊了,请给多一点背景下,将帮助我们来帮助你。 – Trufa 2011-02-28 20:00:24

+0

感谢分享代码也请尽量正确地格式化,同时如果你觉得这可能是realted到C#或ASP请大家重新标记你的问题的时候(没做我自己监守我不知道它是否适用) – Trufa 2011-02-28 20:03:32

回答

1

$("Timer1")不是一个有效的选择。它应该引用一个HTML标记,类或id。 ex:$("div")$("#Timer1")$(".Timer1") .....等等。

0

我真的需要看到一些代码...但它看起来像这可能做的伎俩:

$('#Timer1').removeAttr('disabled'); 
0

在它的文本runat="server"任何标签是服务器端标签不能被通过JavaScript直接操作你正在试图在这里做的方式。

定时器本身是可以被由定时器ASP.Net类的渲染功能,这会导致回发在指定的时间间隔发生的javascript发射实现的客户端的AJAX控制。

通过在Reflector中查看System.Web.Extensions.dll(System.Web.UI.Timer类所在的程序集),它引用了'MicrosoftAjaxTimer.js',它包含在嵌入式资源该DLL。在这个文件中,似乎有一个名为Sys.UI._Timer.set_enabled()的函数,它可以做你想做的事情。

但请记住,你在这里直接使用实施细则和这些主题在微软随时更改。我建议不要使用JQuery,而是操作Timer对象服务器端。