Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.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
C# UpdatePanel、占位符、Ajax post加载的用户控件_C#_Asp.net_Updatepanel - Fatal编程技术网

C# UpdatePanel、占位符、Ajax post加载的用户控件

C# UpdatePanel、占位符、Ajax post加载的用户控件,c#,asp.net,updatepanel,C#,Asp.net,Updatepanel,我可以使用以下代码成功地动态添加用户控件 ASPX: 现在我想加载用户以响应按钮单击。我有一段代码,它通过一篇ajax文章提交表单 $(document).ready(function () { var options = { success: showResponse, url: "/Default.aspx", type: "post" }; $('#btnClick').click(function () {

我可以使用以下代码成功地动态添加用户控件

ASPX:

现在我想加载用户以响应按钮单击。我有一段代码,它通过一篇ajax文章提交表单

$(document).ready(function () {
    var options =
    {
        success: showResponse,
        url: "/Default.aspx",
        type: "post"
    };

    $('#btnClick').click(function () {
        $("form").ajaxSubmit(options);
        return false;
    });
});

function showResponse(responseText, statusText, xhr, $form) 
{
    alert(responseText);
}

<asp:Button ID="btnClick" ClientIDMode="Static" runat="server" Text="Click" />

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:PlaceHolder ID="PlaceHolder1" runat="server" />
<asp:Literal ID="litText" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
$(文档).ready(函数(){
var期权=
{
成功:showResponse,
url:“/Default.aspx”,
类型:“职位”
};
$('#btnClick')。单击(函数(){
$(“表格”)。ajaxSubmit(选项);
返回false;
});
});
函数showResponse(responseText、statusText、xhr$form)
{
警报(responseText);
}

我是C#的新手。当占位符或文字被更改时,用户控件(ASCX)将在服务器端呈现期间附加到页面,并且不能像标准HTML元素那样使用Javascript创建。我建议使用包含标准HTML元素的div,而不是用户控件,并在适用时使用诸如Jquery之类的Javascript库来创建此div的副本。

我将使用内置的ASP.NET AJAX而不是Jquery AJAX;它将为您提供更简单的体验。通过在UpdatePanel中移动按钮,按钮生成的任何回发都将被.NET framework截获并作为部分回发(使用AJAX)提交。这将为您提供一个坚实的起点,让您了解在使用.NETAjax风格之后如何实现您的目标

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnClick" ClientIDMode="Static" runat="server" Text="Click" />
<asp:PlaceHolder ID="PlaceHolder1" runat="server" />
<asp:Literal ID="litText" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>

您好,如果您觉得我的答案有帮助,如果您能将其标记为已接受的答案,那就太好了。谢谢如果没有,请告诉我如何改进,我很乐意这样做。
$(document).ready(function () {
    var options =
    {
        success: showResponse,
        url: "/Default.aspx",
        type: "post"
    };

    $('#btnClick').click(function () {
        $("form").ajaxSubmit(options);
        return false;
    });
});

function showResponse(responseText, statusText, xhr, $form) 
{
    alert(responseText);
}

<asp:Button ID="btnClick" ClientIDMode="Static" runat="server" Text="Click" />

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:PlaceHolder ID="PlaceHolder1" runat="server" />
<asp:Literal ID="litText" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnClick" ClientIDMode="Static" runat="server" Text="Click" />
<asp:PlaceHolder ID="PlaceHolder1" runat="server" />
<asp:Literal ID="litText" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>