我在 masterPage 下的页面有一些问题。我的小软件使用清晰的代码生成随机值,然后使用客户端脚本将 i 从 0 计数到值。当我运行没有母版页的程序时,它可以工作,但是当我尝试从嵌套页面运行它时,它不起作用。这是我的代码:
母版页只有 ContentPlaceHolder。嵌套网络表单:
asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:Label ID="Label2" runat="server" Text="0"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
锋利的代码:
Random rnd = new Random();
int q = rnd.Next();
Label1.Text = q.ToString();
ScriptManager.RegisterClientScriptInclude(this.Page, typeof(Page), "counter", "myjs.js");
Button1.Attributes.Add("onclick", "counter(); return false;");
脚本:
function counter() {
var q = Number(document.getElementById("Label1").innerHTML);
var i = Number(document.getElementById("Label2").innerHTML);
if (i < q) {
i += 1;
document.getElementById("Label2").innerHTML = i;
setTimeout(function () { counter(); }, 10);
}
}
这里的错误var q = Number(document.getElementById("Label1").innerHTML); 和错误文本:运行时错误 Microsoft JScript:需要对象