ASP-Jquery对话框UI函数在第一次回发后失去功能

ASP-Jquery对话框UI函数在第一次回发后失去功能,jquery,asp.net,user-interface,webforms,Jquery,Asp.net,User Interface,Webforms,我对ASP&C非常陌生。我有一个LinkButton,它运行一个C函数从数据库收集数据,然后将这些值添加到一个Div中,我使用jQuery UI对话框来显示该Div。它的功能是用户将jquery对话框中的值添加到表单中,此功能将运行多次,因为大多数时候用户将添加多个值。当前,在他们运行一次并向表单添加值后,再次单击LinkButton绝对不会执行任何操作 我正在做的项目最初是用ASP.NET Web窗体应用程序创建的,因为这是我的第一个Web项目,几天前我创建了一个新的项目,但作为一个空的Web

我对ASP&C非常陌生。我有一个LinkButton,它运行一个C函数从数据库收集数据,然后将这些值添加到一个Div中,我使用jQuery UI对话框来显示该Div。它的功能是用户将jquery对话框中的值添加到表单中,此功能将运行多次,因为大多数时候用户将添加多个值。当前,在他们运行一次并向表单添加值后,再次单击LinkButton绝对不会执行任何操作

我正在做的项目最初是用ASP.NET Web窗体应用程序创建的,因为这是我的第一个Web项目,几天前我创建了一个新的项目,但作为一个空的Web窗体应用程序,因为我已经掌握了窍门,想从头开始构建应用程序。我将所有代码移到这个新项目中,添加了所有引用和我安装的所有NuGet软件包。这就是问题开始出现的时候。我想这是我刚刚忘记的小而愚蠢的事情,但是已经三天了,我需要帮助

一些细节:

IIS 7.5 发生在所有浏览器上 首次成功运行后,不会使用LinkButton执行任何操作 它一次就能完美地工作。 在IIS中使用经典管道 使用jQuery1.11.1库 一些代码-

链接按钮:

添加Id

在代码隐藏函数之后调用的Javascript代码:我在阅读了另一个可能的解决方案后对其进行了修改,但仍然没有成功

function eventRegistration()
{
    $('#addStigId').click(ShowPopup);
}
function ShowPopup(message) {
    //$(document).ready(function () {
        $('#addStigId').click(function () {
            $('#newDialog').dialog('open');
            return false;
        });
        $('#newDialog').dialog({
            dialogClass: 'stigIdDialogCSS',
            resizable: false,
            height: 200,
            title: "Add Stig ID",
            modal: true
        });
        $("#newDialog").show();
}
$(document).ready(eventRegistration());

ShowPopup正在从代码隐藏处调用。

您似乎混淆了某些函数的使用,例如将事件处理程序分配给文档准备和元素单击。我想这就是你真正的意思

function eventRegistration()
{
    $('#addStigId').click(function () {
        showPopup();
        return false;
    });
}

function ShowPopup() {
    $('#newDialog').dialog({
        dialogClass: 'stigIdDialogCSS',
        resizable: false,
        height: 200,
        title: "Add Stig ID",
        modal: true
    });
    $("#newDialog").show();
}

$(document).ready(eventRegistration);
加载文档后,它将运行事件注册函数,将click事件处理程序分配给addStigId。这一切现在都应该行了。您也可以像对待addStigId click事件一样,将事件注册放在匿名函数中,并将其传递到document ready处理程序中。你不需要这样做,但我会给你一个例子,因为它更常见,所以你至少会知道它是什么

function ShowPopup() {
    $('#newDialog').dialog({
        dialogClass: 'stigIdDialogCSS',
        resizable: false,
        height: 200,
        title: "Add Stig ID",
        modal: true
    });
    $("#newDialog").show();
}

$(document).ready(function() {
    $('#addStigId').click(function () {
        showPopup();
        return false;
    });
});

我想这会对你有所帮助,但如果没有,那就大声说出来,因为我可能只是误解了一些东西:

$document.readyeventristration$文件.readyeventRegistration;谢谢你,阿切尔。问题还在发生,但你教会了我一些新的东西。我是否应该从代码背后调用ShowPopup?eventRegistration是我从其他人的解决方案中添加的新部分。我想我知道你在做什么,所以我会在回答中对代码进行一些更改…对于s&Gs,我从代码后面调用了eventRegistration,每次都会弹出对话框,但之后立即关闭,我觉得我很接近,但就是看不到解决方案。非常感谢你的帮助。您的第二个示例是我在今天早些时候阅读eventRegistration解决方案之前最初采用的路线。但是,我的原始代码也错了,因为我的ShowPopup函数中有$document.readyfunction{。因此,无论哪种方式,您都是一个非常大的帮助。谢谢。没问题-很高兴提供帮助: