DNN:dnn确认需要两次点击才能显示
DNN: dnnConfirm needs two clicks to show
在继续之前,我使用以下代码显示dnnConfirm
确认弹出窗口。问题是它需要两次单击才能显示。当我关闭它并再次单击按钮时,它需要 3 次单击,依此类推。
我是 DNN 的新手,不知道这里一定出了什么问题。请指导
这是我的超链接按钮:
<a id="link-btn" class="dnnSecondaryAction" onclick="setInfo();"/>Save Info</a>
这是我的确认码:
$("#link-btn").dnnConfirm({
text: "<div class='MS'>Save info?</div>",
title: "Confirm Save",
yesText: 'Yes',
noText: 'No',
isButton: true
});
//handle user decision
$("#link-btn").click(function (e, isYES) {
if (isYES) {
saveUserInfo(userID);
}
return false;
});
这里有几个问题可能会给您带来问题。
不幸的是,您没有包含 setInfo() 方法的代码,但我会先看看那里。 例如,此方法是否返回假?
另一个问题可能是从
$("#link-btn").click(function (e, isYES) {
这可能会使其他一些所需的行为短路。 一般来说,你最好使用:
e.preventDefault();
相反。
我还要指出,$("#link-btn").click() 可能不会做你认为它做的事情。 这不是处理确认对话框的结果,而是在启动确认对话框时触发。 (例如,点击 #link-BTN)
为了解决双击显示问题的潜在原因(并且还能够处理确认对话框的结果),我建议重写如下:
超链接
<a id="link-btn" class="dnnSecondaryAction"/>Save Info</a>
爪哇语
$("#link-btn").dnnConfirm({
text: "<div class='MS'>Save info?</div>",
title: "Confirm Save",
yesText: 'Yes',
noText: 'No',
isButton: true,
callbackTrue: function() {
saveUserInfo(userID); // assuming userID is a global
}
});
$("#link-btn").click(function (e) {
setInfo();
// in this case, you don't need to call e.preventDefault()
// as dnnConfirm will handle that for you
});
相关文章:
- Append元素在运行两次函数后不显示
- JavaScript倒计时计时器不会显示两次
- 使用wow.js显示两次动画对象
- Rails-jQuery 为什么我必须单击两次才能显示 jQuery 效果
- isHidden函数要求我在应用响应显示时单击两次
- 为什么是Backbone.Collection为第一个查看器显示了两次
- “index.swf”嵌入在“index.html”中,在一个页面中显示同一网站两次.HTML 标题标签/属性也显示值“
- 显示当前日期两次
- 下拉所选值在下拉选项中显示两次
- Ionic:单击两次时显示活动/非活动按钮
- 下拉列表中的选定值在下拉列表中显示两次
- DNN:dnn确认需要两次点击才能显示
- 枚举内容滑块一次显示两个图像
- 谷歌地图在模态没有显示后两次开放-离子
- 警报显示两次而不是一次
- Chrome(也许是Safari?)激发了“;模糊”;当浏览器失去焦点时,在输入字段上显示两次
- datePicker需要单击两次才能显示不可用的日期
- yii在提交按钮中显示确认消息两次
- 为什么我不能两次显示新的Ext.Window ?
- 触发onerror两次显示备用图像的备用图像