我有一个用ASP.NET制作的网站,我把它变成了DotNetNuke模块。但是现在当我尝试检查复选框时,它不起作用。
答案 0 :(得分:2)
将“normalCheckBox”类添加到您的复选框,DNN将忽略它。 EJ:
<input type="checkbox" class="normalCheckBox">
答案 1 :(得分:0)
制作DotNetNuke的好人有一种特殊的幽默感。事实证明,我的网站上使用的复选框被DotNetNuke隐藏,并被复选框的图像取代。这背后的原因我不清楚。
看看HTML:
<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>
为了解决这个问题,我使用了下面显示的代码。这有效地清理了DotNetNuke添加的东西。只需将其放在javascript的末尾即可。
$('.dnnCheckbox').remove();
$(':checkbox').removeAttr('style');
答案 2 :(得分:0)
我遇到了类似的问题。
在我的情况下,我正在使用对话框/弹出窗口,并且复选框无效的原因似乎是z-index为-1(负数)。
但是,似乎复选框的z-index并不总是设置为-1。
例如,正如我在对话框(弹出窗口)框中所看到的那样,最初将z-index设置为-1(这似乎有效)。 当我单击按钮打开对话框时,z-index设置为1001(这也似乎有效)。
但是,如果使用更新面板中包含的复选框,则回发会将复选框的z-index重新设置为-1(这不起作用,因为复选框位于对话框下方)。
总之 - 检查包含复选框(递归)的元素的z-index是否大于复选框z-index,因为这可能是它无法工作的原因(没有a的元素) z-index似乎可以使用复选框。)
一点骇客修复: 我添加了一些jQuery onload来将checkbox的z-index置于它的父元素之上(在本例中是jQuery对话框)
这将获得父元素中z-index为-1的所有输入,并将其z-index 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);
}