1

我试图检查 ASP.NET-MVC 使用的 AjaxContext,例如 Ajax Actionlinks 及其 onSucces、onComplete 等客户端函数。但是我不太了解它...关于这件事的文档在哪里?

当我处于 onSuccess 或 onComplete javascript 事件中时,有人知道如何获取“target”或“srcElement”(e.target 或 window.event.srcElement)吗?

<%=Ajax.ActionLink(
"LinkText", "Action", New With {.Controller = "ControllerName"}, 
New AjaxOptions With {
    .UpdateTargetId = "divElement", 
    .OnSuccess = "function(ajaxContext) {console.log(ajaxContext);}"
}) %>

结果是:

<a 
    href="/Popout/ApplicationCodePopout"
    onclick="Sys.Mvc.AsyncHyperlink.handleClick(
        this, new Sys.UI.DomEvent(event), 
        { 
            insertionMode: Sys.Mvc.InsertionMode.replace, 
            updateTargetId: 'divElement', 
            onSuccess: Function.createDelegate(this, 
                function(ajaxContext) {console.log(ajaxContext);}
            )
        }
    );"
>LinkText</a>
4

3 回答 3

3

您可以将 onSuccess 方法更改为:

<%=Ajax.ActionLink(
"LinkText", "Action", New With {.Controller = "ControllerName"}, 
New AjaxOptions With {
    .UpdateTargetId = "divElement", 
    .OnSuccess = "function(ajaxContext) {debugger;}"
}) %>

注意调试器关键字

然后您可以使用 VS2008 闯入它(假设 IE,如果您使用的是 Firefox,则按照 Jake 所说的那样安装Firebug),然后您可以使用快速监视窗口(在 VS 中或在 Firebug 等中的等价物)查看对象,它是属性/方法等

至于一些文档,请查看链接以查看代码注释,并查看本文以获取更多信息。

于 2009-06-22T11:37:02.623 回答
1

好的,所以您需要安装Firebug(如果您还没有安装,现在就安装 :) 现在开始在代码中使用console.log来帮助您找出每个对象可用的属性和功能。尝试输入 console.log(document) - 您可以在文本框中的控制台窗口中执行此操作(在 >>> 旁边)。请注意如何单击控制台中的链接以进行调查并查看对象具有哪些属性和功能。

于 2009-06-22T10:41:18.400 回答
0

我还建议阅读jQuery in action。我读过的最好的科技书籍之一!一旦你读到,你将能够开始编写自己的 jQuery 代码,而不必担心使用为你吐出 javascript 的服务器端包装库:)

看看 http://www.scribd.com/doc/8635225/jQuery-in-Action

于 2009-06-22T11:48:57.107 回答