jQuery的。设置自定义进度文本

时间:2016-02-16 14:50:50

标签: jquery ajax asp.net-mvc asp.net-mvc-4

我需要在ajax帖子上实现基于自定义文本的进度。 当用户点击按钮并执行帖子时,我很乐意告知用户当前状态。 (例如,设置按当前状态按下的按钮的文本)。

因此,在下面的示例中,用户应该更新四次。

public ActionResult DoWork()
    {
      //Create the application pool code
      creating app pool. please wait...

      //Create the website code
      creating website. please wait...

      //Create database code
      creating database. please wait...

      //All done! enjoy new user!!
      job succeeded! Welcome!

      return View();
    }

我可以用jquery实现这样的效果吗? 是否有类似OnChange的内容可以使用?

1 个答案:

答案 0 :(得分:2)

经典客户端到服务器方式:客户端定期呼叫服务器 - >服务器返回状态/百分比 - >客户端更新html:

var intervalId = setInterval(function () {
$.post("Home/Progress", { id: taskId }, function (progress) {
        if (progress >= 100) {
            updateMonitor(taskId, "Completed");
            clearInterval(intervalId);
        } else {
            updateMonitor(taskId, progress + "%");
        }
    });
}, 100);

好的解释here

现代服务器到客户端解决方案是SignalR。是的,MVC4支持它:

while((line = Console.ReadLine()) != null)
{
    // Send a message to the server
    connection.Send(line).Wait();
}

示例:Progress bar for long running server calls in ASP.Net MVC