日期:2014-05-18  浏览次数:20719 次

响应按钮事件(在线)。
各位,我有两个服务器控件   But1(添加)   But2(清除)
我想在点击(添加)时响应JS脚本“ChkFields()”函数,在点击(清除)时响应JS脚本“Cls()”函数。应该怎么现实呢?
文件(New.aspx)如下:
<script   type= "text/javascript "   language= "javascript ">
        function   ChkFields()
        {
                if   (document.form1.RoleUser.value== " ")
                {
                        window.alert   ( "请输入角色名! ");
                        form1.RoleUser.focus();
                        return   false
                }
        function   Cls()
        {
                if   (document.form1.RolePwd.value== " ")
                {
                        window.alert   ( "请输入角色密码! ");
                        form1.RolePwd.focus();
                        return   false
                }
        }
</script>

------解决方案--------------------
添加 OnClientClick= "ChkFields() "
清除 OnClientClick= "Cls() "
------解决方案--------------------
if (!IsPostBack)
{
this.Add.Attributes.Add( "onclick ", "return ChkFields() ");//添加
this.Delete.Attributes.Add( "onclick ", "return Cls() ");//删除
}
------解决方案--------------------
因为 <form id= "form1 " runat= "server " onsubmit= "return ChkFields() "> 这句。
为什么要在body和form里也加上onsubmit?

你这样的话,body提交的时候就返回false,form提交时进行ChkFields()了,而不是单击按钮进行什么校验了。
把form里的onsubmit= "return ChkFields() "去掉,点清除的时候就不会ChkFields()了
------解决方案--------------------
楼上
------解决方案--------------------
OnClientClick= "return ChkFields() "

别忘了 return