ASP.net -按钮- Javascript确认对话框-执行一些服务器端代码
ASP.net - Button - Javascript Confirm dialog - execute SOME server-side code?
我有一个简单的ASP.net页面,用户可以在其中编辑自己的信息。
当点击"编辑"按钮时,表单进入编辑模式,我显示"保存"answers"取消"按钮,它们的行为与预期的一样。
我想做的是:
当点击"保存"时,显示一个Javascript确认对话框,询问用户是否要发送电子邮件给其他用户,以通知他们刚刚完成的更新。
如果用户说OK,则执行所有服务器端代码来保存数据,并发送电子邮件。如果用户说取消,则执行所有服务器端代码来保存数据,而不发送电子邮件。
所以,我需要javascript框设置一个标志,然后可以读取服务器端,不知何故…然后我可以这样做:
Sub btnSave_Click(sender, e) Handles btnSave.Click
'Save all the data
If sendEmail Then 'This flag set by reading result of javascript Confirm
'Send the email
End If
End Sub
我知道如何在按钮属性中添加确认框,并且已经这样做了。我正在寻找如何在服务器端读取该框的结果的答案…换句话说,我总是希望Page回发发生(通过单击按钮),但只执行一些事件处理程序代码。
希望这有意义。
感谢马特创建一个隐藏字段,并根据确认结果设置该字段的值。您还没有显示您的按钮或表单的代码/HTML,但是您可以将这样的东西放入其中:
<input type="hidden" id="sendEmail" name="sendEmail" value="" />
<input type="submit" value="Save" onclick="promptForEmail();" />
<script>
function promptForEmail() {
var result = Confirm("Send everybody an email?");
// set a flag to be submitted - could be "Y"/"N" or "true"/"false"
// or whatever suits
document.getElementById("sendEmail").value = result ? "Y" : "N";
}
</script>
有几种方法可以做到这一点,但我将使用asp:HiddenField。在javascript中,在用户确认后,让其结果在隐藏字段中设置。在服务器端,你可以像访问其他asp.net控件一样访问它。
aspx:
<asp:HiddenField ID="HiddenField1" runat="server" Value="" />
后台代码: protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
var result = HiddenField1.Value;
}
}
Javascript: //after confirm call this
function SetValue(val)
{
document.getElementById('HiddenField1').value=val;
}
相关文章:
- 加载服务器端渲染的React组件后执行脚本
- 在服务器端脚本执行后关闭选项卡
- 如何在VB中先执行客户端代码,然后再执行服务器端代码
- 当eval只执行服务器端数据时,在javascript中使用eval是否安全
- 正在使用在服务器端或客户端执行的 Jquery 函数
- dust.js是随机用户上传的模板,可以安全地在服务器端执行
- 突出显示与perl正则表达式匹配的HTML部分 - 在服务器端perl或客户端javascript中执行此操作
- 从javaScript执行服务器端代码
- C#/ASP-web,ASP:在客户端执行复选框消息框,如果是,则运行服务器端代码
- 在服务器端执行Javascript
- 从javascript或JQuery执行服务器端cgi代码时遇到问题
- 停止 C# 在下拉列表 javascript 验证失败时继续执行服务器端脚本
- 如何在服务器端执行 JS
- 如何在 asp.net 中更新服务器端执行的 UI 按钮文本
- 加载 DOM 并使用 .Net 在服务器端执行 javascript
- 使用 JQuery 执行服务器端验证,然后将用户发送到另一个站点
- 是否可以(并推荐)使用 Javascript 来执行服务器端脚本
- 单击按钮时执行客户端和服务器端功能 - 特定方案
- 如何在呈现页面之前在服务器端执行api请求
- 节点服务器端执行骨干删除命令,但前端未触发同步事件