Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dotnetnuke 复选框在我的自定义模块中不起作用_Dotnetnuke_Dotnetnuke Module - Fatal编程技术网

Dotnetnuke 复选框在我的自定义模块中不起作用

Dotnetnuke 复选框在我的自定义模块中不起作用,dotnetnuke,dotnetnuke-module,Dotnetnuke,Dotnetnuke Module,我有一个ASP.NET网站,我把它变成了DotNetNuke模块。但现在,当我尝试勾选复选框时,它不起作用 制作DotNetNuke的好人有一种特殊的幽默。事实证明,我的网站上使用的复选框被DotNetNuke隐藏,并被复选框的图像替换。我不清楚这背后的原因 请看一下HTML: <label style="display: inline-block;"> <input type="checkbox" id="copyAllSett

我有一个ASP.NET网站,我把它变成了DotNetNuke模块。但现在,当我尝试勾选复选框时,它不起作用

制作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>

我也有类似的问题

在我的例子中,我使用的是一个对话框/弹出窗口,复选框不起作用的原因似乎是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">