使用基于计算的uri参数的ajax内容创建qtip

时间:2012-01-22 00:14:18

标签: jquery qtip2

我有一个像这样的链接

<a href="" id="permalink">permalink</a>

我绑定了qtip2就像这样

$("#permalink").qtip({
    content: {
        text: "Loading...",
        ajax: {
            url: "http://server/app",
            type: "GET",
            data: {
                "uri": $(this).attr("href")
            },
            success: function(data, status) {
                this.set(data);
            }
        }
    }
})
.click(function(event) {
    event.preventDefault();
});

href由其他一些代码动态更新(实际上,OpenLayers中的永久链接控件)。如果我在没有qtip的情况下点击永久链接,我得到正确的href。但是,使用qtip,$(this).attr(“href”)什么都没有。这是没有设置的。如何获得qtip来接收动态计算的href?

2 个答案:

答案 0 :(得分:2)

使用“each()”。你应该有$(this)的正确范围然后......

$("#permalink").each(function() {
    $(this).qtip({
        content: {
            text: "Loading...",
            ajax: {
                url: "http://server/app",
                type: "GET",
                data: {
                    "uri": $(this).attr("href")
                },
                success: function(data, status) {
                  this.set('content.text', data);
                }
            }
        }
    })
})
.click(function(event) {
    event.preventDefault();
});

答案 1 :(得分:0)

上述解决方案工作正常,但有以下更改。 我已经验证了这个最新的稳定版本(v2.0.1)。

而不是 this.set(data); 使用this.set('content.text', data);