我想知道是否有人可以帮助我。
我已将this图库页面放在一起。
使用每个图像下的图标,用户可以删除他们想要的任何图像。我没有立即删除图像,而是尝试实现模态确认对话框,因此用户可以选择取消删除。
我可以让onlick事件正常工作,但是单击时会询问用户是否要删除图像的文本会从对话框中消失。
我确实遇到了在页面加载时出现在页面顶部的对话框文本的问题。为了克服这个问题,我使用了以下内容:
我尝试添加以下内容以防止这种情况:
.hide{ display: none !important; }
<div id="dialog-confirm" class="hide" title="Delete This Image?">
所以我知道这个问题很可能是由这个引起的,但我不确定如何克服这两个问题。
我只是想知道某人是否能够看到这个并让我知道我哪里出错了。
非常感谢和问候
答案 0 :(得分:1)
.hide
”正在正确申请,其中包含“display:none
”。
但
您为早期代码中的“对话框确认”框定义了“display:block
”属性“内嵌”。
和 定义“内联”的css属性始终优先于“类”中定义的属性。
所以display:none
会被“display:block
”覆盖。
尝试通过“.addClass()/.removeClass()
”或“内联”在两个位置提供属性
它可能会帮助你!!! bcoz它在同样的情况下对我有用
我也是这个领域的新手,所以如果我错了,其他人请让我纠正!!
答案 1 :(得分:0)
请在页面上删除以下样式定义。然后它会工作:
.hide{ display: none !important; }
您需要使用选项autoOpen: false
定义对话框,并且需要在单击删除按钮(使用.live
代码的地方)时使用open命令调用。请修改代码如下:
$( "#dialog-confirm" ).dialog({
resizable: false,
modal: true,
autoOpen: false
buttons: {
"Delete image": function() {
var img = $(this).closest(".galleria-image").find("img");
// send the AJAX request
$.ajax({
url : 'delete.php',
type : 'post',
data : { image : img.attr('src'), userid: "VALUE", locationid: "VALUE"},
success : function(){
img.parent().fadeOut('slow');
}
});
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
$(".btn-delete").live("click", function(){
$( "#dialog-confirm" ).dialog( "open" );
return false;
});
答案 2 :(得分:0)
您可以在对话框调用中传递选项autoOpen: false
以隐藏它,直到调用它为止;
$( "#dialog-confirm" ).dialog({
autoOpen: false
});
使用此选项后,对话框应从视图中隐藏,直到被调用。
此外,您已将.hide
课程放在<style>..</style>
代码之外,并且它出现在您的页面顶部。