回发调用后没有加载HTML页面

时间:2014-09-03 13:48:01

标签: jquery asp.net-mvc-4 client-server postback

我尝试在我的Web应用程序中实现回发调用。 当我向服务器发布调用时,服务器端函数被触发,生成一些逻辑并生成HTML响应代码并发送回页面。服务器的HTML响应未在页面中加载的问题。

这是更详细的例子:

以下是对服务器进行调用的页面:

enter image description here

此处页面的JavaScript代码:

@inherits System.Web.WebPages.WebPage

<h2>GmailOAuthCallback</h2>

<li><a href="/OauthCallBack/GmailOAuthCallback/">Get Contacts</a></li>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $ = jQuery.noConflict()

    $(document).ready(function () {
    alert("yeah...")
        $.post("/OauthCallBack/GmailOAuthCallback",
               { "code": $.urlParam("code") },   //code(in paranthes) - is name of parameter to search
                    function (resp) {
                        // alert(resp)
                            });
    })

    $.urlParam = function (name) {
        var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
        if (results == null) {
            return null;
        }
        else {
            return results[1] || 0;
        }
    }
</script>

这是捕获后调用并将响应(响应是名为索引的html页面)发送回页面的函数:

  public class OauthCallBackController : Controller
    {
        public ActionResult GmailOAuthCallback(string code)
        {
            if (Session["contacts"] == null)
                Session["contacts"] = GmailServiceWorkflow.GetContacts(code); ;

            ViewBag.contacts = Session["contacts"];
            return View("Index");
        }
    }

但是当我从服务器得到响应时,新内容没有显示,我看到了旧内容。 我在firebug控制台中检查了响应是否成功。

以下是它的样子: enter image description here

任何想法为什么我会在客户端得到响应后看到旧页面内容(即为什么响应没有加载到页面)?

0 个答案:

没有答案