0

我正在使用 jQuery 的 .show() 函数在用户按下删除按钮时显示一个弹出窗口。

除了一件事之外,该代码运行良好。这两个按钮出现在 div 的其余部分之前,并且文本出现。有谁知道为什么或是否有解决此问题的方法?

HTML(#delete 嵌套在其他地方)

<div id="popupbgitembg">
<ul class="popupbgitems">
        <li>
            Are you sure you want to delete?
        </li> 
        <li></li> 
        <li>
            <asp:Button ID="butdelete" runat="server" Text="Delete" Font-Size="11px"/>
            <asp:Button ID="butcancel" runat="server" Text="Cancel" Font-Size="11px"/>
        </li>
    </ul>
</div> 

jQuery

        function popup() {
            $("#popupbg").animate({ opacity: ".8" });
            $("#delete").click(
            function() {
                $("#popupbg, #popupbgitembg").show('fast')
            });
            $("#butdelete, #butcancel").click(
            function() {
                $("#popupbg, #popupbgitembg").hide('medium')
            });
        } 
4

3 回答 3

0

我猜它与作为 asp 控件的按钮有关。为什么不隐藏按钮并在加载对话框后显示它们。

于 2012-08-10T01:20:02.237 回答
0

尝试用 html-buttons 替换 asp-buttons ,如果这没有帮助:我不明白 #popupbg 指的是什么,如果它在这种情况下是嵌套的div,只需使用:

//first change

    <li>
        <button type="button" ID="butdelete" runat="server" Text="Delete" Font-Size="11px"/>
        <button type="button" ID="butcancel" runat="server" Text="Cancel" Font-Size="11px"/>
    </li>

//第二次改变

        function() {
            $("#popupbgitembg").show('fast')
        });
于 2012-08-10T01:20:17.757 回答
0

在 jQuery 中使用 Asp.net 按钮时,必须使用类来访问该元素。例如 :

<asp:Button ID="butdelete" calss="butdelete" runat="server" Text="Delete" Font-Size="11px"/>

因为 Asp.net ,在页面渲染期间重写元素 id!所以元素 id 更改为其他名称。您可以在页面右键单击中使用“查看页面源”来查看此操作。

<button type="button" ID="butdelete" runat="server" Text="Delete" Font-Size="11px"/>

在这种情况下,您无法访问 asp.net 中的事件管理器。也许您需要使用 event ,但这种方式可能是不可能的?!

对于英语写作我很抱歉,我还在学习英语。你好运。

于 2012-08-10T07:13:45.597 回答