Asp .Net客户端动态文本

时间:2014-02-23 13:09:42

标签: html asp.net

我正在学习Asp.Net,在编写母版页后,我无法让它在客户端上运行(实际上看到动画)。线程等待操作在发布网页之前在服务器上完成,因此动画不是动态的。它仅显示页面的最终状态。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body bgcolor="red">
<center>
    <h2>Hello w3schools!</h2>
    <h4 id="aa">qq</h4>
    <h3>

        <p><% 


           for (int i = 0; i < 30; i++)
           {
               System.Threading.Thread.Sleep(25);
               int txtLeft = 300 + (int)(100*Math.Sin(i));
               int txtTop = 300+(int)(100*Math.Cos(i));
               string theText = "Hello there!";
               Response.Write("<div style=\"position:absolute; left: "+ txtLeft + "px; top:" + txtTop + "px; \">" + theText +"</div>");
           }

           %></p>


    </h3>
</center>
</body>
</html>

我试过

  

runat =“client”(括号内的“p”字母附近)

但失败了:

Runat必须具有值Server。

enter image description here

1 个答案:

答案 0 :(得分:2)

看看这个jsFiddle:

$(Start);

function Start() {

    var txtLeft, txtTop, theText, theHTML;

    theText = "Hello there!";

    for (var i = 0; i < 30; i++) {

        txtLeft = 300 + (100 * Math.sin(i));
        txtTop = 300 + (100 * Math.cos(i));

        theHTML = '<div style="position:absolute; left: ' + txtLeft + 'px; top:' + txtTop + 'px;">' + theText + '</div>';

        $('#Demo').append(theHTML);
    }
}

基本上,不需要服务器端编程来生成所需的输出;使用asp.net进行服务器工作。您可以做的是将此脚本与jquery引用一起添加到script标记中的页面中,然后就完成了。