使用ajax或回发到动作的差异

Lon*_*der 1 ajax jquery postback asp.net-4.0 c#-4.0

所以我的问题有点怪异,因为我没有了解它(ajax方法)

我只是重用了遇到的原始功能,对其进行了重命名和测试。

因此,在其他不同情况下(更常见):

一些<asp:TextBox>控件,一个提交按钮。

与C#asp.net PostBack相比,Ajax有什么优势?

这是代码

 function AppsName_AjxUpdt(CurrentColumn, recNumSplited, newValue, TBX, ActionRequest, RecordNum) {
        $.ajax({
            type: 'POST',
            url: 'YourPageNameHere.aspx',
            data: {
                'PostSentByAjax': "true",
                'CurrentColumn': CurrentColumn,
                'recNumSplited': recNumSplited,
                'value': newValue,
                'ActionRequest': ActionRequest
            },
            success: function (data) {
                //alert(data);
                if (type == "UpdateUserID") {
                    TBX.setAttribute(defaultValue, newValue);

                    refreshData();
                }
                if (type == "reason") {
                    window.form1.submit();
                }

                if (type == "delete") {
                    document.getElementById("row_" + rowid).style.display = "none";
                    document.getElementById("totalMins").innerHTML = "<span style='text-decoration:underline;color:#A7C942;cursor:pointer;' onclick='refreshData();'>Refresh Results</span>";
                }
            }
        });
    }
Run Code Online (Sandbox Code Playgroud)

那么,将这种代码行为与绑定<asp:TextBox>到自动回发功能有何不同?我可以说我做的笔记,...我可以看到的优势是:

仅当您想创建一个在标签内嵌入c#代码的动态表时,才可以生成elements idnames和values属性,并且同时希望该控件通过自己的事件回发(并且因为没有)的postback事件html controls,如果您确实在标签范围内应用了c#代码,则在仅使用asp:TextBox输入类型“ text”的情况下就不可能这样做。

Kon*_*nev 5

ASP.NET Postback使页面经历完整的Page生命周期。Ajax帖子是异步的,不会重新加载您的页面。从这个意义上讲,如果使用Ajax调用发布帖子,则不会触发与页面生命周期相关的特定ASP.NET服务器事件。所以,你不会得到Page_InitPage_LoadButton点击或类似的东西。