WebForms中的客户端交互
本文关键字:交互 客户端 WebForms | 更新日期: 2023-09-27 18:10:00
标准/推荐的做法是什么?
当用户触发Page_Command"Save"或"Send"时,我想运行一个方法。如果该方法返回false,我希望将用户发送回页面并显示一条消息。
他们在表单中输入的所有数据应该仍然在那里。这条消息会有一个按钮,上面写着"无论如何都要发送"。如果他们点击它,它会发送。
我知道我可以通过webservice和jQuery来做到这一点,但是我想问我如何通过WebForms来做到这一点。
下面是我的基本代码:protected void Page_Command(Object sender, CommandEventArgs e)
{
if ( e.CommandName == "Save" || e.CommandName == "Send" )
{
// run method
}
}
有几种方法可以做到这一点。
一个选项可能是带有文本"Save"的按钮,另一个带有文本"Send anyway"的按钮。让第二个按钮不可见,而第一个按钮可见。
当单击第一个按钮时,它应该运行验证逻辑。如果验证成功,提交——否则,隐藏第一个按钮,并将另一个设置为可见。
当/如果单击第二个按钮,则执行提交而不进行验证。
更新:
稍作修改,您应该能够完成如下操作:
标记:
<asp:Button runat="server"
ID="myFirstButton"
OnClick="SubmitWithValidation" />
<asp:Button runat="server"
ID="mySecondButton"
Visible="False"
OnClick="SubmitData" />
代码:protected void SubmitWithValidation(object sender, EventArgs e)
{
if (ValidateMyData())
{
SubmitData(sender, e);
}
else
{
mySecondButton.Visible = true;
myFirstButton.Visible = false;
}
}
private bool ValidateMyData()
{
// Validate stuff
return isValid;
}
private void SubmitData(object sender, EventArgs eventArgs)
{
// Logic to submit your data here
}