读书人

当小弟我所有非空验证都通过时才出现

发布时间: 2013-04-26 16:27:53 作者: rapoo

当我所有非空验证都通过时,才出现提示"处理中"对话呢?
打算实现的效果:当小弟我所有非空验证都通过时,才出现提示,,当所有非空验证都通过时,出现下面提示对话:当小弟我所有非空验证都通过时,才出现提示,现在的问题是:一点击“启动”,验证还未通过时就出现下面的效果:当小弟我所有非空验证都通过时,才出现提示,我把代码贴出来,高手们帮我看看:

protectedvoid Page_Load(objectsender, EventArgs e)

{

this.Btn_Submit.Exp_SubmitLoad();

}

protectedvoid Btn_Submit_Click(object sender, EventArgs e)

{

#regionset data

stringSqlPath = "/database/SystemDB.sql";

stringIP = this.txtServer.Text.Trim();

if(IP.Length <= 0)

{

this.Exp_PageAlter("请先输入数据库服务器地址");

return;

}

stringUserName = this.txtUserName.Text.Trim();

if(UserName.Length <= 0)

{

this.Exp_PageAlter("请先输入数据库登录用户名称");

return;

}

#endregion

try

{

varmsg = "";

CodeHelper.begin(IP,UserName, UserPwd, SqlName, SqlPath, ref msg);

this.lbResult.Text= msg;

}

catch(Exception ex)

{

this.lbResult.Text

= "数据初始化失败,错误信息如下:\r\n" +
ex.Message.Exp_SubStringByLength(1000, "…");

}

}

其中:Btn_Submit.Exp_SubmitLoad方法如下:

public static void Exp_SubmitLoad(this Buttonbtn)

{

btn.Attributes.Add("onclick","javascript:document.getElementById('pageBase_runing').style.visibility='visible';window.setInterval('pageBase_tick()',500);");



}
但是,如果我把Exp_SubmitLoad,放到单击事件里面,又看不到提示效果,只能放到Page_Load中。但纠结的是放到Page_Load中,又出现我截的图那种效果(还未通过验证,就出现对话框),该怎么实现:当我所有非空验证都通过时,才出现提示对话呢?

注意,我前台用了一个 <asp:Button ID="Btn_Submit"

runat="server" Text="启动"
CssClass="btn_login" OnClick="Btn_Submit_Click"

OnClientClick="disableButton(this);"UseSubmitBehavior="False" />
[解决办法]
使用ajax 在前台验证,当文本框失去焦点调用后台的方法验证。
[解决办法]
http://fineui.com/demo/#/demo/form/form_compare.aspx
[解决办法]
为什么不用js去处理一下呢 多简单的事 改掉那坏习惯 前段代码什么的 不要放在.cs里面。
然后写个js


$("#Btn_Submit").click(function(){
var txtServer=$.trim($("#txtServer").val());
var txtUserName=$.trim($("#txtUserName").val());
if(txtServer=="")
{
alert("请先输入数据库服务器地址");
return false;
}

。。。。
$("#pageBase_runing").show();
window.setInterval('pageBase_tick()',500);");
});

读书人网 >asp.net

热点推荐