Dotnetnuke 复选框在我的自定义模块中不起作用
我有一个ASP.NET网站,我把它变成了DotNetNuke模块。但现在,当我尝试勾选复选框时,它不起作用 制作DotNetNuke的好人有一种特殊的幽默。事实证明,我的网站上使用的复选框被DotNetNuke隐藏,并被复选框的图像替换。我不清楚这背后的原因 请看一下HTML:Dotnetnuke 复选框在我的自定义模块中不起作用,dotnetnuke,dotnetnuke-module,Dotnetnuke,Dotnetnuke Module,我有一个ASP.NET网站,我把它变成了DotNetNuke模块。但现在,当我尝试勾选复选框时,它不起作用 制作DotNetNuke的好人有一种特殊的幽默。事实证明,我的网站上使用的复选框被DotNetNuke隐藏,并被复选框的图像替换。我不清楚这背后的原因 请看一下HTML: <label style="display: inline-block;"> <input type="checkbox" id="copyAllSett
<label style="display: inline-block;">
<input type="checkbox" id="copyAllSettingsCheckBox" name="copyallcheckbox" title="Copy all settings" style="position: absolute; z-index: -1; visibility: hidden;">
<span class="dnnCheckbox">
<span class="mark">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFAAAAAAAApWe5zwAAAAF0Uk5TAEDm2GYAAAAMSURBVHjaYmAACDAAAAIAAU9tWeEAAAAASUVORK5CYII=">
</span>
</span>
Include any additional settings.
</label>
我也有类似的问题 在我的例子中,我使用的是一个对话框/弹出窗口,复选框不起作用的原因似乎是z索引为-1(负) 但是,复选框的z索引似乎并不总是设置为-1 例如,正如我在一个对话框(弹出窗口)中所做的那样,最初z索引设置为-1(这似乎有效)。 当我点击一个按钮打开对话框时,z索引被设置为1001(这似乎也起作用) 但是,对于更新面板中包含的复选框,回发将使复选框的z索引返回到-1(这不起作用,因为复选框位于对话框下方) 总之-检查包含复选框的元素的z索引(递归)是否大于复选框z索引,因为这可能是它不起作用的原因(没有z索引的元素似乎与复选框配合良好) 有点老套: 我添加了一些jqueryonload,以使checkbox的z索引位于其父项之上(在本例中是jQuery对话框) 这将获取父元素中z索引为-1的所有输入,并将其z索引设置为父元素上方的1
//the id being the parent element that has the higher z-index
function FixInputZIndex(id){
var element = $('#' + id);
$('#' + id + ' input').filter(function () { return $(this).css('z-index') < 0; }).css('z-index', element.css('z-index') + 1);
}
//id是具有较高z索引的父元素
函数FixInputZIndex(id){
变量元素=$(“#”+id);
$('#'+id+'input').filter(函数(){return$(this).css('z-index')<0;}).css('z-index',element.css('z-index')+1);
}
将类“normalCheckBox”添加到复选框中,DNN将忽略它。ej:
<input type="checkbox" class="normalCheckBox">
您可能会进一步研究这个问题,仅仅关闭DNN功能并不是在DNN中执行操作的最佳方式。我的模块中有复选框,它们可以很好地工作,DNN功能可以替代UIN中的复选框。有时间,我会再看一看。我同意这或多或少是一个黑客行为,而不是一个真正的解决方案。我仍在使用hack来修复这个问题,我不知道如何优雅地解决这个问题。您是否也在使用对话框,还是容器元素的z索引更高?我刚刚添加了一些jQuery onload,它查找z索引为-1的任何元素,并使其比container元素多1个..是的,我是@m.t.bennett;我查看了生成的HTML,dialogcontainer的z-index与我的一样是1002Yep-我认为这是一个jQuery默认值,但是因为它的z-index位于复选框的顶部,所以不能单击@m.t.bennett在我的例子中,不仅是z-index,而且可见性也被设置为hidden。遗憾的是,这只是一个原型,所以我不会再碰代码了,但我肯定(在本文中,这个词是错误的;))当我创建网站的生产版本的模块时,我会再次进入这个版本。复选框会被以下文件更改:Resources\Shared\scripts\dnn.jquery.js
。正如User2683036所说,使用normalCheckBox
可以停止这种行为,这也适用于normalRadioButton
<input type="checkbox" class="normalCheckBox">