<script language="javascript" type="text/javascript">
function ValidateTandCs(source, args)
{
}
function disableBtn(btnID, newText) {
if (Page_IsValid == true) {
var btn = document.getElementById(btnID);
setTimeout("setImage('"+btnID+"')", 10);
btn.disabled = true;
btn.value = newText;
}
}
function setImage(btnID) {
var btn = document.getElementById(btnID);
btn.style.background = 'url(ajaxLoader.gif)';
}
</script>
the button attrubute is : ValidationGroup="auto" runat="server" Text="....." OnClientClick="Page_ClientValidate('auto');disableBtn(this.id, 'Submitting...')" UseSubmitBehavior="false"
MSDN对这个属性的描述: 使用 UseSubmitBehavior 属性来指定 Button 控件使用客户端浏览器的提交机制还是 ASP.NET 回发机制。默认情况下,此属性的值为 true,从而导致 Button 控件使用浏览器的提交机制。如果指定为 false,则 ASP.NET 页框架将客户端脚本添加到页面,以将窗体发送到服务器。 当 UseSubmitBehavior 属性为 false 时,控件开发人员可以使用 GetPostBackEventReference 方法来返回 Button 的客户端回发事件。GetPostBackEventReference 方法返回的字符串包含客户端函数调用的文本,可以插入到客户端事件处理程序中。 我们做个简单的测试,在页面上放一个按钮,分别设置该属性的true和false,然后我们对比产生的HTML页面源码,可以看见false的时候页面上有脚本,这是ASP.NET回发服务器用的。 在看一下具体的按钮的HTML代码,我们看到了熟悉的dopostback函数,这个就是按钮用来向服务器回发的。