我在index.aspx上注册并加载了userControl“foo.ascx”。在foo的page_load上,我调用了一个在foo标记页面上创建的javascript方法。我正在使用Page.ClientScript.RegisterClientScriptBlock
我遇到的问题是,在加载用户控件期间,ClientScriptBlock代码似乎是在呈现javascript之前调用javascript 。下面是我拥有的页面源代码示例和问题IS StartCounter(“25:10”);在创建函数之前调用。任何帮助都会很棒。非常感谢你。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script type="text/javascript" src="Assets/Javascript/jQuery.js" ></script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head><title>
</title></head>
<body>
<form name="form1" method="post" action="default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKLTUxOTYxMTY4OGRkounMyYFBle29baVV35X4KzMIHn4=" />
</div>
<type="text/javascript">
//<![CDATA[
StartCounter("25:10");//]]>
</script>
<div>
<script type="text/javascript" src="../Assets/Javascript/Timer.js"></script>
<script type="text/javascript">
$(document).ready(function() {
});
function StartCounter(startTime)
{
$('#counter').countdown({
stepTime: 60,
format: 'mm:ss',
startTime: startTime,
digitImages: 6,
digitWidth: 53,
digitHeight: 77,
timerEnd: function() { alert('end!!'); },
image: "/Assets/Images/digits.png"
});
}
答案 0 :(得分:2)
尝试以这种方式在服务器端的RegisterClientScriptBlock中注册js,它将解决问题。
$(document).ready(function(){ StartCounter("25:10"); });