如何解决梅西 jQuery 确认框重定向
我在 WebForms 中有一个 jQuery 脚本,我试图在按钮单击事件上显示一条消息。我的 script
文件中有 .aspx
,我在代码隐藏中调用它。问题是如果用户点击 confirm
而不是 cancel
按钮,我该如何重定向?
.ASPX 脚本:
<script type="text/javascript">
$(window).unload(function () {
CloseWindow();
})
//var newEmployeeDetail = document.getElementById(hfNe)
function confirmAppointEmployee() {
debugger;
Messi.ask("Employee appointed successfully",function (val) {
if (val == false) {
$("[id*=Cancel]").click();
}
else {
$("[id*=Confirm]").click();
}
},{
buttons: [{ id: '0',label: 'Confirm',val: true,'class': 'btn-primary' },{ id: '0',label: 'Cancel',val: false }]
});
}
</script>
背后的代码:
ClientScript.RegisterStartupScript(this.GetType(),"Success","<script>confirmQuickAppointEmployee()</script>");
下面的代码是重定向用户需要调用的字符串。
private string PersonalInformationDetailUrl = Company.Framework.SmartNavigationPersonnel.SmartNavigation.GetUrlByPageName(Company.Framework.SmartNavigationPersonnel.SmartNavigation.PageNameList.PersonalInformationDetail) + "?AllowAddOption=true&AllowDeleteOption=true&RefreshMenuPage=true";
我尝试了以下方法,但 cancel
和 confirm
按钮执行相同的操作。
var confirm = "$(document).ready(function(){ new Messi('Employee appointed successfully'," +
"{title: 'Title',buttons: [{id: 0,label: 'Close',val: 'false'},{id: 0,val: 'true'}]," +
"callback: function(val) { window.location.href = '" + Functions.FixClientUrl(PersonalInformationDetailUrl) + "' }}); });";
this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"confirm",confirm,true);
解决方法
这一切都归结为您的 confirmQuickAppointEmployee
Javascript 函数,问题中未指定该函数。很明显,它必须是一个确认对话框/窗口,其中有一个确认和一个取消按钮/功能。但是,由于问题中未共享实施,因此我只能提供一般准则:
找出那个函数是什么
打开浏览器的开发工具,转到其控制台选项卡并输入:
confirmQuickAppointEmployee + ""
然后按 Enter。这将向您显示此函数的源代码(如果存在)。当然,您应该在您的网站上执行此测试。查看此函数的源代码可能会为您提供一些可能有助于找出答案的信息。
查找用法示例
在您的项目源代码中搜索所有出现的 confirmQuickAppointEmployee
以查看到目前为止它是如何使用的。如果您按顺序仔细查看所有用法,那么您可能会发现一些确认/取消不同的示例。如果您找到这样的示例,那么您只需要了解如何识别确认/取消点击并将相同的想法应用于您的问题。
一种可能性
Javascript 有一个原生的 confirm
对话框,可以用作函数调用并返回一个布尔值。在您的控制台中试试这个:
if (confirm("")) {
alert("confirmed");
} else {
alert("cancelled");
}
如果您的 confirmQuickAppointEmployee 碰巧模仿了这种行为,那么您可以类似地使用它。当然,这在很大程度上取决于 confirmQuickAppointEmployee
,这在问题中没有共享。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。