Umbraco - 使用 Ajax 加载内容

发布于 2024-11-11 17:51:19 字数 309 浏览 3 评论 0原文

我是 Umbraco 的新手,刚刚开始了解它的来龙去脉。

不管怎样,我已经自己弄清楚了文档类型、宏、模板、xslt 文件的工作方式,现在我正在尝试做一些其他的事情。即我需要使用 AJAX 调用加载文档内容。它基本上是一个带有菜单的面板(动态的,我想出了如何加载),根据所选的菜单项(随菜单加载的文档)加载内容。我需要弄清楚如何使用 AJAX 调用获取该内容,因为我不想重新加载页面。

这是使用 Umbraco BASE 扩展完成的还是我在这里思考的?如果是这样,具体是怎样的?我是否只需编写一个类,然后在方法中将 HTML 字符串拼接在一起?

感谢您的帮助

I'm new to Umbraco and only started to figure out the ins and outs of it.

Anyway, I've figured out on my own the way document types, macros, templates, xslt files work and am now trying to do some other stuff. Namely I need to load a document content using an AJAX call. It's basically a panel with a menu (dynamic, which I figured out how to load) that loads content depending on the menu item selected (the documents loaded with the menu). What I need to figure out is how to get that content using an AJAX call since I don't want to reload the page.

Is this done using Umbraco BASE extensions or am I off in my thinking here? If so, how exactly? Do I just write a class and then stitch together an HTML string in a method?

Thanks for the help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

落叶缤纷 2024-11-18 17:51:19

您可以使用休息方法。为此,您必须编辑配置文件夹中的restExtensions.config

Ajax 调用

$.ajax({
        type: 'POST',
        url: "/base/AliasName/GetData.aspx",
        data: {

        },
        success:
                    function (data) {
                    }

    });

restExtensions.config

<ext assembly="/DllName" type="Namespace.ClassName" alias="AliasName">
    <permission method="GetData" returnXml="false" allowAll="true" />
  </ext>

You can use rest methods. For this you have to edit restExtensions.config on the config folder.

Ajax Call

$.ajax({
        type: 'POST',
        url: "/base/AliasName/GetData.aspx",
        data: {

        },
        success:
                    function (data) {
                    }

    });

restExtensions.config

<ext assembly="/DllName" type="Namespace.ClassName" alias="AliasName">
    <permission method="GetData" returnXml="false" allowAll="true" />
  </ext>
快乐很简单 2024-11-18 17:51:19

是的,这正是 Base 的使用场景。

您可以在此处找到有关使用 base 的文档:

http://our.umbraco-base/simple-base-samples umbraco.org/wiki/reference/umbraco-base/simple-base-samples

对于通过 AJAX 消耗基础数据,JQuery 就是答案。

http://api.jquery.com/jQuery.ajax/

这是一个破解的示例(未测试代码):

$(document).ready(function ()
{
    $(".buttonListener").click(function ()
    {
        $.ajax(
        {
            url: '/Base/TestAlias/Hello.aspx',
            success: function (data, textStatus, XMLHttpRequest)
            {
                alert(data);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown)
            {
                alert("Ka pow!");
            }
        });
        return true;
    });

Yup this is exactly the scenario that Base is used for.

You can find documentation on using base here:

http://our.umbraco.org/wiki/reference/umbraco-base/simple-base-samples

For the consumption of base via AJAX then JQuery is the answer.

http://api.jquery.com/jQuery.ajax/

Here's a hacked together example (not tested code):

$(document).ready(function ()
{
    $(".buttonListener").click(function ()
    {
        $.ajax(
        {
            url: '/Base/TestAlias/Hello.aspx',
            success: function (data, textStatus, XMLHttpRequest)
            {
                alert(data);
            },
            error: function (XMLHttpRequest, textStatus, errorThrown)
            {
                alert("Ka pow!");
            }
        });
        return true;
    });
幼儿园老大 2024-11-18 17:51:19

MVC 中使用 umbraco 进行 Ajax 调用

$('#TestClick').on('click',function(){
        $.ajax({
            url: 'umbraco/surface/Home/TestPage',
            type: 'POST',
            data: { id:10001},

            success: function (data) {
                alert(data);
            },
            error: function () {
                alert("error");
            }
            });
 })

Ajax call using umbraco in MVC

$('#TestClick').on('click',function(){
        $.ajax({
            url: 'umbraco/surface/Home/TestPage',
            type: 'POST',
            data: { id:10001},

            success: function (data) {
                alert(data);
            },
            error: function () {
                alert("error");
            }
            });
 })
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文